2016-03-29 11 views
1

私はVB.NETにVB6アプリケーションを変換するプロジェクトに取り組んでいます。私はFlexGridをDataGridViewに置き換え、いくつかの問題に遭遇しました。私は本当に答えを見つけるのに苦労しています。DataGridViewは、プログラムで大文字と小文字を区別するソート

FlexGridのソートには多くのオプションがありました。 DataGridViewに表示される唯一のオプションは次のとおりです。

System.ComponentModel.ListSortDirection.Ascending 
System.ComponentModel.ListSortDirection.Descending 

大文字と小文字を区別する必要があります。私はどこにでも見てきて、私が必要とするものが見つからない。上記のコードを見つけることさえ困難でした。どんな助けもありがとうございます。

編集:グリッドはプログラムによって埋められます。

+1

データはどこにありますか?それは手動で追加されたのですか、それともデータソースにありますか? – Plutonix

+0

申し訳ありません、手動で追加されました。私は質問を編集します。 – pixelmeow

+1

データがロードされたときにソートするか、列ヘッダーをクリックしてソート基準を変更することについて話していますか? – cdkMoose

答えて

3

グリッドを手作業で充填している場合は、ListSortDirection.Ascendingで十分です。

例えば、Example項目(任意の順中)の次のリスト与えられた次のセットアップを

Dim examples = New List(Of Example)() From { _ 
    New Example() With { _ 
     Key .Bar = "Abcd", _ 
     Key .Foo = "3" _ 
    }, _ 
    New Example() With { _ 
     Key .Bar = "ABcd", _ 
     Key .Foo = "4" _ 
    }, _ 
    New Example() With { _ 
     Key .Bar = "aBcd", _ 
     Key .Foo = "2" _ 
    }, _ 
    New Example() With { _ 
     Key .Bar = "abcd", _ 
     Key .Foo = "1" _ 
    } _ 
} 

Dim col1 As New DataGridViewTextBoxColumn() 
Dim col2 As New DataGridViewTextBoxColumn() 

col1.Name = "Foo" 
col2.Name = "Bar" 

col1.SortMode = DataGridViewColumnSortMode.NotSortable 
col2.SortMode = DataGridViewColumnSortMode.Programmatic 

Me.dataGridView1.Columns.Add(col1) 
Me.dataGridView1.Columns.Add(col2) 

For Each example As Example In examples 
    Me.dataGridView1.Rows.Add(example.Foo, example.Bar) 
Next 

Me.dataGridView1.Sort(col2, ListSortDirection.Ascending) 

あなたはいつものように結果が表示されるはずですが

DataGridView ascended sort for "Bar" column

+0

ありがとう、私は正しく使用していなかった。これはトリックです。 – pixelmeow

関連する問題