【发布时间】:2013-05-10 02:28:06
【问题描述】:
在 VB.net (2012) 我有以下代码:
For Each itm As ListViewItem In Me.lvCustomers
If CDbl(itm.Tag) <> customer.Id Then Me.lvMerges.Items.Add(itm.Clone)
Next
使用 Option Strict On 我收到以下错误:
错误 2 重载解析失败,因为无法访问“添加” 用这些参数调用: '公共可重写函数 Add(value As System.Windows.Forms.ListViewItem) As System.Windows.Forms.ListViewItem':Option Strict On 不允许 从“对象”到的隐式转换 'System.Windows.Forms.ListViewItem'。 'Public Overridable Function Add(text As String) As System.Windows.Forms.ListViewItem': Option Strict On 不允许 从“对象”到的隐式转换 '字符串'。
我可以做一个 lvMerges.Items.Add(itm) ,它不会引发错误,但是我必须从 lvCustomers 列表视图中删除它,我不想这样做。
谁能解释我如何在不关闭 Option Strict 的情况下使其正常工作?
目标是复制 ListviewItem 和所有子项。
【问题讨论】:
-
如果您使用
(ListViewItem)itm.Clone(),它会起作用吗? -
好的,由于某种原因,我忘记了我不是在这里使用 c#...在下面添加了正确的语法作为答案。
标签: vb.net listview listviewitem overload-resolution option-strict