如题
<DataGrid x:Name="dataGrid" CanUserAddRows="False" Height="120" Width="1200" AutoGenerateColumns="False" ItemsSource="{Binding DeviceList}" SelectionUnit="Cell">
<DataGrid.Columns>
<DataGridCheckBoxColumn Binding="{Binding DeviceSelected}" ClipboardContentBinding="{x:Null}" Header="选择"/>
<DataGridTextColumn Binding="{Binding DeviceId}" ClipboardContentBinding="{x:Null}" Header="设备ID" Width="120"/>
<DataGridCheckBoxColumn Binding="{Binding DeviceEnable}" ClipboardContentBinding="{x:Null}" Header="可用"/>
<DataGridTextColumn Binding="{Binding DeviceIP}" ClipboardContentBinding="{x:Null}" Header="设备IP" Width="120"/>
<DataGridTextColumn Binding="{Binding DeviceState}" ClipboardContentBinding="{x:Null}" Header="设备状态"/>
<DataGridTextColumn Binding="{Binding DeviceOprate}" ClipboardContentBinding="{x:Null}" Header="运行状态" Width="200"/>
<DataGridTextColumn Binding="{Binding DeviceVer}" ClipboardContentBinding="{x:Null}" Header="设备版本" Width="100"/>
<DataGridTextColumn Binding="{Binding ProxyHost}" ClipboardContentBinding="{x:Null}" Header="代理IP" Width="120"/>
</DataGrid.Columns>
</DataGrid>
以上是Xaml的UI
var dispatcher = App.Current.Dispatcher;
dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Background, (Action)delegate () {
var device = DeviceListView.DeviceList.Where(x => x.DeviceId.Equals(e.Device.DeviceId)).FirstOrDefault();
DeviceListView.DeviceList.Add(e.Device);
});
以上是ViewModel修改Binding数据的代码
现在的问题是 数据修改后 UI不刷新显示 但是点击DataGrid 表头后 UI就刷新了 求解