想把ListCtr设置为整行高亮显示
错误的方法为:
1 clistctrl.ModifyStyleEx(0,LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
正确的方法为:
1 DWORD dwStyle = clistctrl.GetExtendedStyle(); 2 dwStyle |= LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES; 3 clistctrl.SetExtendedStyle(dwStyle);
那么,ModifyStyleEx和SetExtendedStyle区别在哪里?
实际上,ModifyStyleEx只是对窗口的GWL_EXSTYLE属性作设定,也即只是对窗口的扩展属性作设定,这种属性以WS_EX_作为前缀,比如WS_EX_CLIENTEDGE,
在listctrl 控件中,它的扩展风格的值并没有存入窗口的GWL_EXSTYLE属性值中,而是通过发送LVM_SETEXTENDLISTVIEWSTYLE消息给listctrl控件来实现,因此它就不能通过ModifyStyleEx做设定,只能通过SetExtendedStyle进行设定。