我在绑定中有一个数据网格,由一列和一个按钮组成。
单击此按钮“全选”时,列中的所有值都已更改。
有什么问题?我会立即看到没有datagrid滚动的结果。
如何立即刷新列?
<DataGrid AutoGenerateColumns="False"
ItemsSource="{Binding Ele_Soc, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectedItem="{Binding Selec_Elenc, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
SelectionMode="Single" Name="Dg_Dat" >
<DataGrid.Columns>
<DataGridTextColumn x:Name="col_Soc_cod" Binding="{Binding Soc_cod}"
IsReadOnly="True" Header="Soc. Cod" Width="80" />
</DataGrid.Columns>
</DataGrid>
public ObservableCollection<Model_Soc> Ele_Soc { get; set; }
private void Cmd_SelectAll()
{
for (Int32 i = 0; i <= Ele_Soc.Count - 1; i++) {
Ele_Soc.Item(i).Soc_cod = "Yes";
OnPropertyChanged("Ele_Soc");
}
}
答案 0 :(得分:0)
<强>解决即可。
在“For”循环后,我添加了此代码
for (Int32 i = 0; i <= Ele_Soc.Count - 1; i++)
{
Ele_Soc.Item(i).Soc_cod = "Yes";
OnPropertyChanged("Ele_Soc");
}
ObservableCollection<Model_Soc> Tmp = Ele_Soc;
Ele_Soc = null;
OnPropertyChanged("Ele_Soc");
Ele_Soc= Tmp;
OnPropertyChanged("Ele_Soc");