Ich habe ein Datagrid, das an eine beobachtbare Auflistung gebunden ist. Wenn ich die Elemente in der beobachtbaren Sammlung aktualisiere, wird das Datenraster nicht aktualisiert. Ich weiß, dass ich benachrichtigen werde nicht feuern, da ich die Sammlung nicht nur die Eigenschaften ändern, also versuche ich, die Elementquelle auf Null und die Neubindung nach der Überprüfung nach Updates, aber das funktioniert nicht. Auch ich habe Artikel ausprobiert. Das einzige, was ich gefunden habe, funktioniert, indem ich auf die PendingChanges-Seite zurück navigiere.Datengrid wird nicht aktualisiert, nachdem Elementquelle auf Null gesetzt wurde
Um eine Vorstellung davon zu bekommen, wie das funktioniert. Ich habe ein Fenster, das eine Seite enthält, und unten ist ein Fenster, das eingerahmt ist. Wenn Sie auf eine Schaltfläche klicken, navigiert es zu dem Fenster, das das Datagrid enthält (ausstehende Änderungen)
Klasse und Seite enthält das Datagrid
public PendingChanges(page blahh)
{
InitializeComponent();
Datagrid.ItemsSource = obvs_collection;
}
public string GetPendingChanges()
{
PopulatePendingChanges();
return NumberOfItemsPending + " items checked out";
}
private void PopulateCollection()
{
//obvs_collection.Clear(); this doesn't work
//Datagrid.ItemsSource = null this doesn't work
foreach (var path in localPath)
{
obvs_collection.Add(new PendingItem()
{
ID = blah.Replace("\\",""),
Path = path.ToString()
});
}
}
Klasse/Seite, die mit dem Datenraster
private void CheckChanges()
{
_pendingChangesPage = new PendingChanges(blah);
PendingChangesTb.Text = _pendingChangesPage.GetPendingChanges();
}
nachdem es nulling aus haben Sie versucht Datagrid.Items.Refresh() aufrufen; –