WPF MVVM Datagrid 双向绑定
WPF MVVM Datagrid Two Way Binding
我使用 IPropertyChanged 接口将 List
中
我在 ViewModel 中的 Collection:
private List<Article> articlesFalseCatalogGroup;
public List<Article> ArticlesFalseCatalogGroup
{
get { return articlesFalseCatalogGroup; }
set
{
articlesFalseCatalogGroup = value;
OnPropertyChanged("ArticlesFalseCatalogGroup");
}
}
这是 object 的一个道具:
public class Article: INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
public void OnPropertyChanged(string propname)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propname));
}
#region Standard fields
private string _SUPPLIER_AID;
public string SUPPLIER_AID
{
get { return _SUPPLIER_AID; }
set
{
_SUPPLIER_AID = value;
OnPropertyChanged("SUPPLIER_AID");
}
}
XAML数据网格:
<DataGrid Grid.Column="1"
AutoGenerateColumns="True"
ItemsSource="{Binding ArticlesFalseCatalogGroup, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
<DataGrid.Columns>
<DataGridCheckBoxColumn Header="Select" IsThreeState="True" />
</DataGrid.Columns>
</DataGrid>
添加具有双向绑定的列定义:
<DataGridTextColumn Binding="{Binding SUPPLIER_AID, Mode=TwoWay"} Header="SUPPLIER_AID" />
我使用 IPropertyChanged 接口将 List
中我在 ViewModel 中的 Collection:
private List<Article> articlesFalseCatalogGroup;
public List<Article> ArticlesFalseCatalogGroup
{
get { return articlesFalseCatalogGroup; }
set
{
articlesFalseCatalogGroup = value;
OnPropertyChanged("ArticlesFalseCatalogGroup");
}
}
这是 object 的一个道具:
public class Article: INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
public void OnPropertyChanged(string propname)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propname));
}
#region Standard fields
private string _SUPPLIER_AID;
public string SUPPLIER_AID
{
get { return _SUPPLIER_AID; }
set
{
_SUPPLIER_AID = value;
OnPropertyChanged("SUPPLIER_AID");
}
}
XAML数据网格:
<DataGrid Grid.Column="1"
AutoGenerateColumns="True"
ItemsSource="{Binding ArticlesFalseCatalogGroup, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
<DataGrid.Columns>
<DataGridCheckBoxColumn Header="Select" IsThreeState="True" />
</DataGrid.Columns>
</DataGrid>
添加具有双向绑定的列定义:
<DataGridTextColumn Binding="{Binding SUPPLIER_AID, Mode=TwoWay"} Header="SUPPLIER_AID" />