Я все еще участвую в фазе обучения WPF, EF и MVVM, и теперь у меня есть следующий Probplem. Я могу удалить и вставить новые элементы в свой DataGridView, но я не знаю, как обновлять мои элементы. Все, что я делаю, это выбор пуста, у которого уже есть ключ Primary, а затем я помещаю в него данные. Он работает (обновляет базу данных), но GridView не освежает. Мне нужно сначала перезапустить программу, чтобы увидеть мои обновленные данные.Обновление EF не обновляет GridView
Моя команда выполнения для обновления моей базы данных. Im в классе ViewModel
public void ExecuteUpdate(object obj)
{
try
{
SelectedIndex.Child_Update(new Farbe { FarbauswahlNr = SelectedIndex.FarbauswahlNr, Kurztext = SelectedIndex.Kurztext, Ressource = SelectedIndex.Ressource, Vari1 = SelectedIndex.Vari1, Vari2 = SelectedIndex.Vari2 });
//ListeAktualisieren --> Refreshing the List
ListeAktualisieren();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
}
Вот мой Regresh метод которым следует Обновление GridView. Im в классе ViewModel
public void ListeAktualisieren()
{
farbliste.ListeAktualisieren(db);
farbliste.Model = farbliste.Model.Concat(farbliste.Addlist).ToList();
Model = farbliste.Model;
farbliste.Addlist.Clear();
}
Метод вызывает мой бизнес-список, который также получил метод Refreh. Чтение из моей базы данных здесь. Im в классе Business List
public void ListeAktualisieren(TestDBEntities db)
{
Model.Clear();
foreach (var item in db.Farben)
{
//Insert and delete working
add = new Farbe { FarbauswahlNr = item.FarbauswahlNr, Kurztext = item.Kurztext, Ressource = item.Ressource, Vari1 = Convert.ToBoolean(item.Var1), Vari2 = item.Vari2 };
Addlist.Add(add);
}
}
Модель является источником моего GridView которым не Освежающий измененные данные при обновлении, но показывает новые строки данных при вставке или удалении.
У меня есть свойство OnPropertyChange в моей собственности. –
Свойство PropertyChangedEvent должно достигнуть WPF-слоя, как ваше соединение с ViewModel в WPF? – Patrick
Farbliste.cs и Farbe.cs - это класс CSLA, поэтому я не думаю, что необходим Observablecollection? –