Hi zusammen,
ich bräuchte nochmal Hilfe beim Sortieren eines ungebundenen Datagridviews. Ich habe ein DGV 'dgvZeit' in dem sich die Spalte 'tag' befindet. Diese ist mit Wochentagen (Montag, Dienstag...) gefüllt. Ein Klick auf den Header sortiert die Tage alphabetisch. Gewünscht ist aber die 'normale' Wochentagreihenfolge. Deshalb wollte ich das SortCompare Ereignis nutzen, um die entsprechende Sortierreihenfolge herzustellen. Das Ergebnis von e.SortResult interessiert mein DGV aber nicht. Es sortiert trotzdem alphabetisch. Was mache ich falsch?
private void dgvZeit_SortCompare(object sender, DataGridViewSortCompareEventArgs e)
{
string[] tage = { "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag" };
if (e.Column.Name == "tag")
{
if (Array.IndexOf(tage, e.CellValue1.ToString()) > Array.IndexOf(tage, e.CellValue2.ToString())) e.SortResult = 1;
else if (Array.IndexOf(tage, e.CellValue1.ToString()) < Array.IndexOf(tage, e.CellValue2.ToString())) e.SortResult = -1;
else e.SortResult = 0;
//msgbox($"{e.CellValue1.ToString()}, {e.CellValue2.ToString()} result: {e.SortResult}");
}
}