我看了this link以找到我的问题的答案。但我想知道,有没有办法让我们不必使用MVVM。首先,让我问一下我的问题!!我在名为MainWindow
的窗口上有一个DataGrid控件。从MainWindow
我打开另一个名为NewWindow
的窗口。在NewWindow
我有一些文本框和一个按钮。在NewWindow
,有人可以输入有关客户的信息,然后将这些信息保存到数据库中,因此我在NewWindow
按钮后面使用以下代码。
var Que = (from P in FaceDB.tblUsers where P.UserId == mytxtbox1.Text.ToString() select P).SingleOrDefault();
Que.Pass = mytxtbox2.Text.ToString();
FaceDB.SaveChanges();
保存这些信息后,我想更新MainWindow中的DataGrid。我尝试使用以下代码,但没有一个不起作用:
Que.Pass = mytxtbox2.Text.ToString();
FaceDB.SaveChanges();
MainPage MPWin = new MainPage();
MPWin.mydatagridt.UpdateLayout();
OR:
MPWin.mydatagrid.Items.Refresh();
OR:
CollectionViewSource.GetDefaultView(mydatagrid.ItemsSource).Refresh();
答案 0 :(得分:0)
可以使用DataGrid
直接在ItemsSource
的代码中设置数据,以下是对您的示例的修改:
Que.Pass = mytxtbox2.Text.ToString();
FaceDB.SaveChanges();
MainPage MPWin = new MainPage();
MPWin.mydatagridt.ItemsSource = Que.ToList();