我有一个datagrid和一个视图模型,它有一个Obtableable的"Person"类集合,它作为datagrid的ItemSource.
Datagrid有两个文本列"FirstName"和"LastName"
datagrid将"CanUserAddRows"和"CanUserDeleteRows"设置为true.因此,用户可以使用删除按钮添加新行并删除它们.
当用户尝试删除行时,我想验证他是否可以删除该行.如果他可以删除它,它将被删除,否则将显示错误,并且不能删除该行.像我们在relay命令中那样的东西
新的RelayCommand(parm => this.DeletePerson(parm),this.CanDeletePerson(parm)
这可能吗 ?如果是这样的话?
Kor*_*fin 31
尝试将DataGrid设置为...
CanUserDeleteRows ="False"SelectedItem ="{Binding SelectedPerson,Mode = TwoWay}"
并添加...
<DataGrid.InputBindings>
<KeyBinding Key="Delete" Command="{Binding DeletePersonCommand}" />
</DataGrid.InputBindings>
Run Code Online (Sandbox Code Playgroud)
将SelectedPerson添加到VM并根据DeletePersonCommand(ICommand)Execute或CanExecute中的SelectedPerson执行删除验证,如果验证通过,则从ObservableCollection中删除该项.
| 归档时间: |
|
| 查看次数: |
15066 次 |
| 最近记录: |