Combox控件实现类似TextBox控件的ReadOnly=true时的背景颜色和字体颜色!(WinForm)
Posted on 2008-10-25 11:00 james.dong 阅读(1893) 评论(1) 编辑 收藏 举报想将一个ComboBox变成不可用,设置Enable成False虽然简单,但文字变成灰色了。
不知道怎么能让ComboBox不可用,而现实的文字还是黑色的,就类似TextBox的ReadOnly设置成True那样。
public class m_ComboBox : ComboBox {
public m_ComboBox()
{
this._ReadOnle = true;
this.DropDownStyle = ComboBoxStyle.DropDownList;
this.TabStop = false;
}
public bool ReadOnly
{
get
{
return this._ReadOnle;
}
set
{
this._ReadOnle = value;
}
}
protected override void WndProc(ref Message m)
{
if (this._ReadOnle && (m.Msg == 0xa1 || m.Msg == 0x201 || m.Msg == 0x203))
{
return;
}
base.WndProc(ref m);
}
}