Ich habe versucht, die folgenden, die alle auf Funktion ScrollIntoView fehlschlagen und eine Nullreferenceexception geben:WPF-Toolkit: Wie scrollt man Datagrid, um das ausgewählte Element aus dem Code zu zeigen?
// doesn't work
grid.SelectedItem = sItem;
grid.ScrollIntoView(sItem);
// doesn't work
grid.SelectedItem = sItem;
grid.Focus();
grid.CurrentColumn = grid.Columns[0];
grid.UpdateLayout();
grid.ScrollIntoView(sItem,grid.Columns[0]);
// doesn't work
grid.SelectedItem = sItem;
grid.UpdateLayout();
grid.ScrollIntoView(sItem);
Das Problem ist, wenn ich eine Reihe von Code-Behind wählen, die Auswahl ist nicht sichtbar - es ist irgendwo auf der Unterseite . Wenn der Benutzer nicht scrollt, fühlt er, dass die Auswahl verschwunden ist. Ich muss ein DataGrid bis zu dem Punkt scrollen, dass Benutzer die Auswahl sehen können.
Ich habe auch "BringIntoView" versucht, aber kein Glück.
in der ersten Anweisung Ich bin grid.SelectedItem = sItem zuweisen, denkst du grid.SelectedItem und sItem sind in jedem anders? Entschuldigung seine falsche Antwort wird es nie funktionieren. –
SelectedItem-Wrapper für eine Abhängigkeitseigenschaft, sodass sich mein Code von dem unterscheidet, was Sie haben. Probieren Sie es aus, ich hatte das gleiche Problem und das hat für mich funktioniert. Siehe dissembly: [Kategorie ("Appearance"), DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden), Bindable (true)] öffentliches Objekt SelectedItem { erhält { return base.GetValue (SelectedItemProperty); } set { base.SetValue (SelectedItemProperty, Wert); } } –
Akash, hast du das schon mal gemacht? –