Hey,
gibt es eine Möglichkeit "ungültige" Werte bei einer OrderBy() Operation an das Ende einer Liste zu verschieben, statt an den Anfang. Konkret geht es hier um
double-Werte.
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| case SortMode.ByTextAsDouble: items = sortingOrder == SortOrder.Descending ? items.OrderByDescending(a => { double d; return double.TryParse(a.Text, out d) ? d : double.NaN; }).ToList() : items.OrderBy(a => { double d; return double.TryParse(a.Text, out d) ? d : double.NaN; }).ToList(); break; |
Sollte ein String nicht nach double castbar (gibts das Wort überhaupt

?) sein gebe ich einfach den Wert
double.NaN weiter. Diese landen aber am Anfang der Liste und ich hätte sie gerne am Ende. Kennt da jemand eine Möglichkeit ohne die Liste nochmal nachträglich bearbeiten zu müssen?
Der längste Typ-Name im .NET-Framework ist: ListViewVirtualItemsSelectionRangeChangedEventHandler