我有一个被设置为只读的TextBox
。
在某些时候,这个TextBox
将可供编辑,并且它的BackColor
会改变(用于指示值是否有效)。
如果我想将TexBox
重新设置为ReadOnly
,TextBox
不会返回一个只读TextBox
的原始BackColor
。
为了再次获取原始颜色,我应该怎么做呢?
我意识到我可以手动将颜色设置为SystemColors.Control
,但这是“正确的方法”吗?
代码示例
这是一个简单的示例代码。
如果SystemColors.Control
是正确的方法,我将在ReadOnlyChanged
事件中更改它...
private void button1_Click(object sender, EventArgs e)
{
//At this point this.textBox1 is ReadOnly
this.textBox1.ReadOnly = false;
this.textBox1.BackColor = Color.Orange;
/*this.textBox1.BackColor = SystemColors.Control;*/ //Is this the right way?
this.textBox1.ReadOnly = true; //Textbox remains orange...
}