【发布时间】:2013-08-05 01:58:23
【问题描述】:
我有一个TextBox,它被设置为ReadOnly。
在某些时候,TextBox 可用于编辑,而 BackColor 发生变化(表示该值是否有效)。
如果我想将TexBox 设置回ReadOnly,则TextBox 不会返回ReadOnly 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...
}
【问题讨论】:
标签: c# winforms colors textbox