站長留言

  • ✅ 本站維護及更新歷史紀錄,詳情請參考公告
  • ✅ 有任何意見、想法,歡迎留言給Spicy知道喔
  • ✅ 固定於每周一至周五更新Blogger文章,周末不定期
程式C#

【Winform】EP2:如何添加唯讀的文字方塊 Readonly TextArea?

Readonly TextArea - thumbnail

Common 目標

  • 於Winform建立一個呈現即時日誌的文字方塊
  • 文字方塊必須唯讀Readonly,避免使用者任意輸入或更改即時日誌
  • 有錯誤訊息時,必須將以紅色文字呈現

步驟1:建立文字方塊

Form1.cs [設計]
拖曳或新增RichTextBox,而非TextBox,原因是TextBox無法修改局部文字樣式

新增RichTextBox

Form1.Designer.cs
文字方塊 變數命名為richTextBox1
初始程式如下

this.richTextBox1 = new System.Windows.Forms.RichTextBox();

this.richTextBox1.Location = new System.Drawing.Point(137, 69);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(100, 96);
this.richTextBox1.TabIndex = 0;
this.richTextBox1.Text = "";

步驟2:修改屬性、樣式

可寫在Form1.cs 或 Form1.Designer.cs

// 唯讀設定
this.richTextBox1.ReadOnly = true;
// 垂直捲軸Scroll bar this.richTextBox1.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical;

步驟3:一般、錯誤訊息

顏色可以按行修改

// 一般訊息:黑色
this.richTextBox1.SelectionColor = this.richTextBox1.ForeColor;
// 錯誤訊息:紅色
this.richTextBox1.SelectionColor = Color.Red;
this.richTextBox1.AppendText("請自行填入訊息"); // 將捲軸Scroll bar自動拉到最新一行
this.richTextBox1.SelectionStart = this.richTextBox1.TextLength;
this.richTextBox1.ScrollToCaret();

結果


Readonly TextArea

參考資料 Reference

沒有留言:

張貼留言

本網站建議使用電腦或平板瀏覽