c# 消息处理时遇到的问题
我在消息处理中,捕捉到特定的消息时,就将窗口的某个按钮disable,但是实现不了。
代码如下:
public bool PreFilterMessage( ref Message m)
{
switch(m.WParam.ToInt32())
{
case 2057: //这就是我自定义的特定消息
this.btnOk.Enabled = false;
break;
.
.
.
.
.
default:
break;
}
return false;
}
消息处理没有任何问题,我要处理的各种消息都获得正常,在消息处理时候写log也正常,可就是在处理窗口内容时候有问题,按钮怎么都无法disable。我跟踪代码,看到 this.btnOk.Enabled = false; 这句代码的确是执行了的,但是窗口按钮还是没有disable,且我以人格保证,没有任何其他地方将该按钮Enabled设置为true.
怀疑是否在消息处理时候,操作窗口内容需要特殊代码??
google了会儿也没有答案,只好来请教大虾们了。
------解决方案--------------------试试加一句this.Refresh():
------解决方案--------------------强制刷新