1

RichTextBoxのラベルとして使用する必要があるRichTextBoxがあり、Windows フォーム アプリケーションに必要な背景選択があります。

RichTextBoxを無効にBackColorするときに問題が発生しましたRichTextBox。次のコードを使用してみました。

ll.ForeColor = Color.LightGreen;
ll.Location = new Point(1, Form1.ActiveForm.Size.Height / 23 * 23);
ll.AutoSize = true;
ll.SelectionColor = Color.FromArgb(0, 0, 0);
ll.BorderStyle = BorderStyle.None;
ll.BackColor = Color.FromArgb(0, 0, 0);
ll.Multiline = false;
ll.ReadOnly = true;
ll.Enabled = false;
ll.SelectionBackColor = Color.Transparent;
ll.SelectAll();
ll.Font = new Font("ModeSeven", 12);

しかし、それでも私はこれを取得します... http://i.imgur.com/j098Fl6.png

4

2 に答える 2

1

readOnlyプロパティを設定せずにEnabledプロパティを使用しただけで、これを取得しました:

ここに画像の説明を入力

これはまさにあなたが望むものです。

ここに完全なコードがあります

     this.richTextBox1.Location = new System.Drawing.Point(31, 12);
     this.richTextBox1.Name = "richTextBox1";
     this.richTextBox1.ReadOnly = true;
     this.richTextBox1.Size = new System.Drawing.Size(100, 96);
     this.richTextBox1.TabIndex = 0;
     this.richTextBox1.Text = "tsglksklsmkld";
     richTextBox1.ForeColor = Color.LightGreen;
     richTextBox1.SelectionColor = Color.FromArgb(0, 0, 0);
     richTextBox1.BorderStyle = BorderStyle.None;
     richTextBox1.BackColor = Color.FromArgb(0, 0, 0);
     richTextBox1.SelectionBackColor = Color.Transparent;
     richTextBox1.Font = new Font("ModeSeven", 12);
     richTextBox1.Multiline = false;

選択できないようにしたい場合は、次のようにします。

this.richTextBox1.SelectionChanged += new System.EventHandler(this.richTextBox1_SelectionChanged);

そしてハンドラーで:

  private void richTextBox1_SelectionChanged(object sender, EventArgs e)
  {
     richTextBox1.Select(0,0);
  }
于 2013-08-12T08:59:42.090 に答える