这里的((e.State&DrawItemState.Selected)是什么意思???屏蔽掉其他状态位
解决方案 »
- NHibernate达人进!
- 如何将字符转成日期类型
- VS2008 WPF中使用openfiledialog问题
- 急求outlookbar解决方案
- 怎样使树形视图的根项前有一个“+”按纽,表示该项有子项?在线等,谢谢
- 请问哪里有国家标准GB/T13702,GB/4754下载
- 关于c#调用c++dll中variant的问题
- 怎样培训新人掌握.Net技术?请这些朋友过来领分 shenanigan(宝宝) 13880079673(CMonkey) aspritionisdead(听风的声音)
- C#连接Oracle的问题?
- 利用C#开发的WEB应用中,如何弹出提示框(类似于MESSAGEBOX)!
- 求助(急)
- 请高手指点,veryvery感谢
switch简洁吗?
是不可以的!!!
为什么一定要加上&DrawItemState.Selected????
尤其是是" & "!
这是干什么的!
比如二进制的10010111 & 00010101 = 00010101因为一个按钮的state可以selected的同时,又有foucs,所以
可能的state为e.state=DrawItemState.Selected | DrawItemState.Foucs...
,这样,做一个&, 就把Focus和其它状态给过滤掉了,只剩下Selected.
详细一点,假设slected为0X00000001,
focus为0X000000010,
这样e.state=selected | focus= 0x00000011
所以,e.state != selected,
而,e.state&selected= 0x00000001 ==selected 你可以顺便查查sdk上把DrawItemState的几个状态值分别是多少呵呵。