我正在使用 Grammarian 的 ObjectListView。我将旧的 ListView 更改为那个,但我所做的只是填写项目。但是当应用程序启动并且我的鼠标悬停在 ListView 上时,它会立即抛出异常:
System.InvalidCastException was unhandled
Message="Unable to cast object of type 'System.Windows.Forms.ListViewItem' to type 'BrightIdeasSoftware.OLVListItem'."
Source="ObjectListView"
如何解决这个问题?
如果这很重要,我也会使用 Win7。
编辑:
我用字典。看起来我需要使用 SetObjects 方法而不是添加项目。
好的,这很好,但我只是在使用 dict.Value 集合。我不想通过listview修改数据,只显示。所以我只有 1 列并列出所有字符串。这可能吗?
我将不胜感激。
最佳答案
您是对的 - 您应该使用 SetObjects()
方法而不是添加 ListViewItems
。在 ObjectListView 中,永远不应有 ListViewItems。
该控件会跟踪更多信息,因此需要比 ListViewItems 提供的更多的信息。
您可能想阅读 Getting Started网站页面,尤其是 Unlearn you must部分。
ObjectListView 确实有它的 own forum , 如果您想在那里提问。
关于c# - ObjectListView 转换异常(用于 HitTest ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1621545/