问题在代码中。无法理解为什么会这样。
private void listView_DrawItem(object sender, DrawListViewItemEventArgs e)
{
// This works Ok
if (e.Item.Selected)
{
// ...
}
// This works wrong!
// e.State is always Selected! Why?
if ((e.State & ListViewItemStates.Selected) != 0))
{
// ...
}
}
有人遇到过类似的问题吗?
最佳答案
这看起来像是自 2006 年左右以来的一个已知错误,当 ListView.HideSelection
属性设置为 FALSE
时就是证据。
文件中唯一的解决方法是执行您已经完成的操作:使用 e.Item.Selected
。
Here是错误报告的链接 - 看起来它到目前为止已被降级为低优先级。
关于c# - DrawItem 事件中某个 listView 项的 State 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2385615/