2017-06-16 19 views
1

如何启用一个按钮,如果一个项目在列表视图中选中?我已经尝试过这个并且摆弄它,但没有运气。谁能帮忙?启用按钮,如果列表视图项检查

Private Sub lvCustomers_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lvCustomers.SelectedIndexChanged 
    For Each x As ListViewItem In lvCustomers.Items 
     If x.Checked Then 
      btnConfirmOrder.Enabled = True 
     ElseIf x.Checked = False Then 
      btnConfirmOrder.Enabled = False 
     End If 
    Next 
End Sub 
+0

你的“运气”跑了出来,因为你是循环theru所有这些使按键只会反映最后一项的结果。请阅读[问]并参加[旅游] – Plutonix

+0

您如何绑定到XAML?请显示更多代码。 –

+0

我会把它放在ItemChecked事件中,以便它在点击复选框时触发代码。我也只是基于它的checkeditems集合的数量大于0.(假设这是winforms,并且您希望在检查复选框时发生结果) –

回答

0

下面是一个使用我在我的评论描述事件和收集的例子

Private Sub ListView1_ItemChecked(sender As Object, e As ItemCheckedEventArgs) Handles lvCustomers.ItemChecked 
    'checkeditems collection keeps track of only items that are checked 
    'if a single item is checked lvCustomer.CheckedItems.Count > 0 
    'becomes true and therefore the button is enabled. This event 
    'will respond with any check or uncheck of a checkbox in the LV 
    btnConfirmOrder.Enabled = lvCustomers.CheckedItems.Count > 0 
End Sub 
+0

令人惊叹!谢谢 – Jamie

0
Private Sub lvCustomers_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lvCustomers.SelectedIndexChanged 
    btnConfirmOrder.Enabled = lvCustomers.Items.Any(Function(x) x.Checked) 
End Sub 
相关问题