wpf mvvm模式下怎么获取datagrid的 selecteditems
时间: 2024-10-11 16:07:55 浏览: 62
WPF MVVM 模式使用DataGrid
4星 · 用户满意度95%
在WPF MVVM架构中,当你想要获取`DataGrid`的选定项(SelectedItems)时,通常会通过以下几个步骤:
1. **数据绑定**: 首先,你需要将`DataGrid`的`SelectedItem`属性绑定到ViewModel的一个依赖属性上。在XAML文件中,这看起来像这样:
```xml
<DataGrid ItemsSource="{Binding Items}" SelectedItem="{Binding SelectedItem, Mode=TwoWay}">
<!-- ...其他DataGrid配置 -->
</DataGrid>
```
2. **ViewModel设计**:
在ViewModel中,创建一个表示选中项的字段,并设置双向数据绑定(`Mode=TwoWay`)。例如:
```csharp
public class ViewModel : INotifyPropertyChanged
{
private object selectedItem;
public object SelectedItem
{
get { return selectedItem; }
set
{
if (value != selectedItem)
{
selectedItem = value;
OnPropertyChanged("SelectedItem");
}
}
}
// Implement INotifyPropertyChanged for proper event handling
private void OnPropertyChanged(string propertyName)
{
// ...
}
}
```
3. **事件处理**:
如果你想在`SelectedItem`改变时执行某个操作,可以在ViewModel中添加一个方法,当`SelectedItem`更新时会被自动调用。
4. **访问选定项**:
当需要获取选定项时,在View层或ViewModel的业务逻辑部分,可以直接访问`SelectedItem`属性,它会返回当前已选择的`DataGrid`项实例。
阅读全文