【发布时间】:2011-08-02 03:16:58
【问题描述】:
我有这个代码:
<ListView Height="238"
HorizontalAlignment="Left"
Name="listView1"
VerticalAlignment="Top"
Width="503"
ItemsSource="{Binding}"
IsSynchronizedWithCurrentItem="True">
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox Tag="{Binding ID}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn DisplayMemberBinding="{Binding ID}" Header="ID" />
<GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Name" />
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
产生这个窗口:
我如何知道选中了多少个复选框,并获取每个选中的CheckBox 的值Tag?
【问题讨论】:
-
您能否详细说明您想要实现的目标??
-
我使用复选框删除行被选中,但我无法获取选中复选框的值标签。
-
你绑定到 ListView 的对象集合有一个属性 ID,你已经绑定了 Checkbox 的 Tag 属性。相反,在该对象中有一个布尔属性并将其与 Checkbox 的 IsChecked 属性绑定。然后,您可以简单地在视图模型中迭代您的集合,并查看用户选择了哪些项目。您需要注意的其他事项: 1. 使您的对象实现 INotifyPropertyChanged。 2. Checkbox 使用双向绑定。如果您需要一些示例代码,请告诉我们。
标签: c# wpf binding wpf-controls