Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Diese Seite zeigt lediglich nicht-personalisierte Werbung an, um der neuen EU-Datenschutzgrundverordnung gerecht zu werden.
Translate
Samstag, 27. Februar 2016
C#.Net Datagridview Sortierung, aktuelle selektierte Zeilen und Scrollbarposition speichern
//Aktuelle Sortierung zwischenspeichern
{
DataGridViewColumn oldColumn = Datagridview.SortedColumn;
ListSortDirection direction = Datagridview.SortOrder;
List<int> selectedItems = new List<int>();
if (Datagridview.SelectedRows.Count > 0) {
foreach (void r_loopVariable in Datagridview.SelectedRows) {
r = r_loopVariable;
selectedItems.Add(r.Index);
}
}
//Aktuelle erste angezeigte Zeile speichern
int saveRow = 0;
if (Datagridview.Rows.Count > 0) {
if ((Datagridview.FirstDisplayedCell != null)) {
saveRow = Datagridview.FirstDisplayedCell.RowIndex;
}
}
'Your code
//Sortierung anwenden
if ((oldColumn != null)) {
switch (direction) {
case 0:
break;
case 1:
Datagridview.Sort(oldColumn, ListSortDirection.Ascending);
//Datagridview sortieren
break;
case 2:
Datagridview.Sort(oldColumn, ListSortDirection.Descending);
//Datagridview sortieren
break;
}
} else {
Datagridview.Sort(Datagridview.Columns(2), ListSortDirection.Descending);
//Datagridview sortieren
}
//Alle SelectedRows resetten
foreach (void r_loopVariable in Datagridview.SelectedRows) {
r = r_loopVariable;
r.Selected = false;
}
//SelectedRows wieder setzen
if (selectedItems.Count > 0) {
foreach (void r_loopVariable in selectedItems) {
r = r_loopVariable;
if (Datagridview.Rows.Count > 0) {
if (Datagridview.Rows.Count - 1 >= r) {
Datagridview.Rows(r).Selected = true;
}
}
}
}
//Scrollbar wieder richtig setzen
if (saveRow != 0 & saveRow < Datagridview.Rows.Count) {
Datagridview.FirstDisplayedScrollingRowIndex = saveRow;
}
}
Abonnieren
Kommentare zum Post (Atom)
Keine Kommentare:
Kommentar veröffentlichen