2008-09-17 9 views
0

Bu benim .NET dünyasında Gridview uzmanlarından herhangi birine ihtiyaç duyduğum ilk gerçek sorum..Net Gridview alpha sorting, sayısal olarak sıralanması gerekiyor

Codebehind'den bir Gridview oluşturuyorum ve sütunlarda bir grup sayısal veri tutuyorum. Bununla birlikte, virgül kod numaralarını kod alanından ekliyorum. Bunu Gridview'a yüklediğimde, sıralama yeteneğini etkinleştirdim, ancak GRUT görünümü, bu virgüllere eklediğim için sayısal olarak sıralamak yerine ALPHA sıralamasını seçiyor.

Yardımıma ihtiyacım var. Bunu kimseye vermek isteyen var mı? Benim kullandığım alfa sıralama yerine gridview bazı sütunları sayısal sıralama yerine değiştirmeniz gerekir.

cevap

0

Bunun yerine, sadece JQUERY Tablo Sıralayıcısı başvurdu.

burada bulunabilir: tablesorter

0

Izgara görünümü ayırmak için kendi karşılaştırma nesnesini sağlayabileceğine inanıyorum. Sadece ilham verici IComparer. İşte bir makale:

Gridview Guy Article

1

kendi karşılaştırıcısı uygulanması ve dizeleri, numaralama düzgün 'denir Doğal Sıralama'yı tedavisi için algoritma olarak tasnif sonuna kadar yaparsanız. Jeff şurada üzerine oldukça iyi bir Yazdi:

http://www.codinghorror.com/blog/archives/001018.html

Sen C Burada # da oldukça iyi bir uygulama bulabilirsiniz

: Tam olarak birini kullanabilirsiniz size sıralama yapıyoruz şekline bağlı olarak http://www.codeproject.com/KB/string/NaturalSortComparer.aspx

0

Yukarıdaki yöntemlerde veya DB'ye dönüp, sütunlar aslında bir sayı tipi varsa, sıralama işlemini daha sonra yapabilirsiniz.

0

P-Invoke arkadaşınız.

[DllImport("Shlwapi.dll", CharSet = CharSet.Unicode)] 
private static extern int StrCmpLogicalW(string psz1, string psz2); 

Daha sonra kendi karşılaştırıcınız olarak kullanabilirsiniz. (VS2005 içinde) Örneğin

,

Array.Sort(tringArray, delegate(string left, string right) 
{ 
    return StrCmpLogicalW(left, right); 
}); 
0

bu gerçekten eski farkındayım, ama sunumu ile veri karıştırma ediyoruz; Bu türden bir şey budur. Sayıları virgül eklemeden SQL'den alın, ardından bunları sunum katmanına ekleyin.