Ответ 1
Перезагрузите источник данных вашей сетки после обновления
myGrid.ItemsSource = null;
myGrid.ItemsSource = myDataSource;
Мой источник находится в базе данных MySQL, я сделал команду update, и теперь мне нужно обновить DataGrid
.
MySqlCommand cmd = new MySqlCommand(
"update request set status = " + StatusRequest(value) +
" where id = " + rowView[0].ToString() + "", conn);
MySqlDataReader myReader = cmd.ExecuteReader();
Как обновить мой DataGrid
?
Перезагрузите источник данных вашей сетки после обновления
myGrid.ItemsSource = null;
myGrid.ItemsSource = myDataSource;
Попробуйте mydatagrid.Items.Refresh()
От MSDN -
CollectionViewSource.GetDefaultView(myGrid.ItemsSource).Refresh();
Как насчет
mydatagrid.UpdateLayout();
Привяжите Datagrid к ObservableCollection и обновите свою коллекцию вместо этого.
У меня было много проблем с этим, и именно это помогло мне вернуть DataGrid новыми значениями. Убедитесь, что вы используете тип данных, из которого вы получаете данные, чтобы получить последние значения данных.
Я представил это с SomeDataType
ниже.
DataContext.Refresh(RefreshMode.OverwriteCurrentValues, DataContext.SomeDataType);
Надеюсь, это поможет кому-то с теми же проблемами, что и я.