Hej Här måste du gå in och tillfälligt göra om den tabell som ligger till grund för din dataview. Hej igenSortera kolumn i datagrid
Någon som bär på information om hur jag sorterar en datagrid-kolumn efter double, när kolumnen är av string typ?
(Datagriden har en dataview som datasource)
Jag vill kunna sortera följande (högst först):
10%
1.3%
100%
(Jag sitter i VS03)
mvh PeterSv: Sortera kolumn i datagrid
Jag antar att du har kontroll på det så jag skulle i ditt ställe göra en av två saker.
1. Skapa en extra kolumn i tabellen i din kod. Se till att den är av double-typ. Kopiera värdet från din sträng-kolumn så att den blir en double (ta alltså bort ev. %-tecken).
eller
2. Ställ frågan så till databsen att du får tillbaka en kolumn av double-typ som i punkt 1.
När du sen binder datat till gridden, binder du kolumen till den av sträng-typ men sätter sortexpression till den kolumn som är av double-typ..
Hoppas det hjälper
//Mikael SandSv:Sortera kolumn i datagrid
Hittade en property i klassen DataGridTextBoxColumn som fixar det på ett smidigt sätt.
Sätter man exvis:
DataGridTextBoxColumn.Format = "0.000 %";
så får man ett procent-tal med 3 decimalers nogrannhet.
Mycket smidigare än att själv implementera en specialbyggd jämförelse genom att implementera IComparable.
Hoppas lösningen är till nytta för någon.
/ Peter