0

読み取り専用のtextBox1があります。私は変えようとしています

textBox1.ForeColor = Color.Red;

しかし、それは機能しません。何か案が ?

4

6 に答える 6

4

TextBoxコントロールのプロパティをReadOnlytrue に設定すると、テキストがグレー表示になります。これがデフォルトの動作です。

赤で表示する必要がある場合は、ReadOnlyプロパティを設定するのではなく、TextChanged手動でイベントを処理し、古い値をそのまま維持する必要があります。しかし、私はそれをお勧めしません。

于 2013-02-20T15:17:08.690 に答える
1

KeyPress のイベントをキャンセルしてみてください:

textBox1.Text = "Test";
textBox1.ForeColor = Color.Red;
textBox1.KeyPress += new KeyPressEventHandler(textBox1_KeyPress);

void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
 e.Handled = true;
}

ReadOnly プロパティは常にコントロールをグレー表示にしていました。これはデフォルトの動作です。

于 2013-02-20T15:23:53.213 に答える
0

読み取り専用のテキストボックスに対してできることは(最初に読み取り/書き込みに変更する)KeyPress()、上記のイベントをオーバーライドしてTextBox、それ以降のすべての入力を無視できることです。

于 2013-02-20T15:18:46.960 に答える
-1

これはあなたを助けるはずです。

textboxname.ForeColor = Color.FromKnownColor(KnownColor.selectanycolor);
于 2016-06-05T06:06:47.657 に答える