wpf datagrid双向绑定
时间: 2023-09-12 08:03:48 浏览: 92
wpf 修改前景颜色 双向绑定
WPF DataGrid 双向绑定可以通过以下步骤实现:
1. 创建一个 ViewModel 类,该类实现 INotifyPropertyChanged 接口并包含要绑定到 DataGrid 的属性。
2. 在 XAML 中,将 DataGrid 的 ItemsSource 属性绑定到 ViewModel 中的属性。
3. 使用 DataGrid 的 AutoGenerateColumns 属性或手动定义列来确定要显示的数据列。
4. 在 XAML 中,将 DataGrid 的 SelectedItem 属性绑定到 ViewModel 中的属性。
这样,当用户选择 DataGrid 中的行时,ViewModel 中的属性将更新,反之亦然。
下面是一个简单的示例:
ViewModel 类:
```
public class MyViewModel : INotifyPropertyChanged
{
private ObservableCollection<MyData> _myDataList;
public ObservableCollection<MyData> MyDataList
{
get { return _myDataList; }
set
{
if (_myDataList != value)
{
_myDataList = value;
OnPropertyChanged(nameof(MyDataList));
}
}
}
private MyData _selectedData;
public MyData SelectedData
{
get { return _selectedData; }
set
{
if (_selectedData != value)
{
_selectedData = value;
OnPropertyChanged(nameof(SelectedData));
}
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
```
XAML:
```
<DataGrid ItemsSource="{Binding MyDataList}" SelectedItem="{Binding SelectedData}" AutoGenerateColumns="True">
<!-- Define additional columns here if needed -->
</DataGrid>
```
请注意,这只是一个简单的示例,实际情况可能更为复杂。
阅读全文