我知道PropertiesListView 可以更改常用样式,但我只想测试一下。例如,View = View.LargeIcon将样式LVS_ICON = 0应用于ListView或GridLines = true将样式LVS_EX_GRIDLINES = 1应用于ListView。我想用CreateParams. 我认为使用GetWindowLong和SetWindowLongWin32 函数就可以了,但据我所知,为了方便起见,CreateParams可以更改控件的样式。但是这次用 a ListView,我不能让它工作,它根本没有效果,不知道ListView是不是一个特例?这是我的代码:
public class CustomListView : ListView {
protected override CreateParams CreateParams {
get {
CreateParams cp = base.CreateParams;
cp.Style |= 3; //Apply LVS_LIST (View as List)
return cp;
}
}
}
只会产生一些效果,但LVS_EX_GRIDLINES = 1效果不是。这很奇怪,大多数其他应用都没有效果。Grid lines are drawn on the ListViewBorder becomes thicker and looks like 3D-border
你能解释一下,或者至少给我一些有效的例子吗?再次请不要给我任何使用GetWindowLongand的解决方案或代码SetWindowLong,只需使用CreateParams.
谢谢!

