【发布时间】:2014-08-04 14:56:58
【问题描述】:
现在,我正在开发一个 WPF 项目。
我有一个确认对话框,其中显示了用户从 CSV 文件导入的重复字符串列表。
用户可以勾选想要添加到列表(列表视图)中的重复字符串,然后单击确定。
问题是我不确定如何获取选中的复选框项目的值并将它们添加到列表中。我如何知道选择了哪个复选框并将所选项目添加到列表中?
我想使用 MVVM 而不是隐藏代码来完成这项任务。我看过一些使用代码的例子,但它们仍然让我感到困惑。
我想我必须使用命令,但我仍然不确定如何获取选中的复选框值?
这是我的尝试:
ViewModel 中的代码:
private bool isSelected;
public bool IsSelected
{
get
{
return isSelected;
}
set
{
isSelected = value;
RaisePropertyChanged("IsSelected");
if (IsSelected == true)
{
foreach (var item in confirmationList.PassList)
{
List.Add(item);
}
RaisePropertyChanged(LIST);
}
else if (IsSelected == false)
{
}
}
}
XAML:
<Grid>
<ListView ItemsSource="{Binding Inventory}">
<ListView.View>
<GridView>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox Content="{Binding}" IsChecked="{Binding Path=IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn DisplayMemberBinding="{Binding Name}"
Header="Name">
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
不确定从这里可以做些什么来获得选中的值?
编辑:更新 xaml 以反映外观。
【问题讨论】: