6.DataGridView でのソート等のデータ操作関係色々(18_DGV_06) (旧、SampleNo.309) |
1.ユーザーがマウスのクリックでソートできないように設定 2.DataGridView の指定の列のデータをキーに昇順・降順でソートする 3.DataGridView で複数列をキーにソートする 4. 5. 6. 7. 8. 9. |
下記プログラムコードに関する補足・注意事項 動作確認:Windows 8.1 (Windows 7) / VB2013 (VB2010) / Framework 4.5.1 / 対象の CPU:x86 Option :[Compare Text] [Explicit On] [Infer On] [Strict On] Imports :追加なし 参照設定:追加なし その他 :使用データは、次よりダウンロードして使って下さい。 dgvdat.zip :このサンプルを使用される前に、左のメニューのDataGridViewでのデータの読込保存関係をご覧になって下さい。 このサンプル等の内容を無断で転載、掲載、配布する事はお断りします。(私の修正・改訂・削除等が及ばなくなるので) 必要ならリンクをはるようにして下さい。(引用の場合は引用元のリンクを明記して下さい) |
1.ユーザーがマウスのクリックでソートできないように設定 |
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click '01.ユーザーがマウスのクリックでソートできないように設定 Button1.PerformClick() 'ソート禁止 For Each c As DataGridViewColumn In DataGridView1.Columns c.SortMode = DataGridViewColumnSortMode.NotSortable Next c ''ソート実行可 'For Each c As DataGridViewColumn In DataGridView1.Columns ' c.SortMode = DataGridViewColumnSortMode.Automatic 'Next c End Sub |
2.DataGridView の指定の列のデータをキーに昇順・降順でソートする |
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click '02.DataGridView の指定の列のデータをキーに昇順・降順でソートする Button1.PerformClick() '降順でソートを実施 DataGridView1.Sort(DataGridView1.Columns(5), System.ComponentModel.ListSortDirection.Descending) wt.WaitTime(2500) '昇順ソートを実施 DataGridView1.Sort(DataGridView1.Columns(5), System.ComponentModel.ListSortDirection.Ascending) End Sub |
3.DataGridView で複数列をキーにソートする |
別途、dgvtest3.xls ファイルを読み込んで表示して置いて下さい。 Private frg3 As Boolean Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click '03.DataGridView で複数列をキーにソートする Button2.PerformClick() wt.WaitTime(2000) frg3 = Not frg3 If frg3 Then 'DataView.Sortプロパティを使っての複数列をキーにソート 'DataView の作成(MSDN の DataView を使用したデータの並べ替えとフィルター処理 を参照) 'DataView.Sortプロパティを使って(DataView の並べ替え列と並べ替え順序を取得または設定) Dim view As DataView = CType(DataGridView1.DataSource, DataTable).DefaultView view.Sort = "支店 ASC,部署名 ASC,達成率 DESC" Else Dim view As DataView = CType(DataGridView1.DataSource, DataTable).DefaultView view.Sort = "支店,部署名,達成率 ASC" End If End Sub 図1.上記実行結果 |
4. |
5. |
6. |
7. |
8. |
9. |
検索キーワード及びサンプルコードの別名(機能名) |
並べ替え 並べ替え DataView の作成 MSDN の DataView を使用したデータの並べ替えとフィルター処理 DataView.Sort プロパティ を使って DataView の並べ替え列と並べ替え順序を取得または設定 |