10

DataGridViewに並べ替えを停止するように指示する適切な方法は何ですか?

プログラムで4列目と昇順で並べ替えるようにグリッドに指示する「画面」があります。別のエリアに切り替えるとき、同じグリッドを「デフォルト」/ソートなしで表示したいと思います。すべての列を削除して、新しい列を追加しています。並べ替えは4列目に残ります。

Sort()メソッドでこれを行う方法がわかりません。何か案は?

4

7 に答える 7

8

BindingSource の並べ替えに直接アクセスしました。

((BindingSource)_dgv.DataSource).Sort = string.Empty;

于 2009-09-24T19:25:05.780 に答える
6

MSN フォーラムから:

DataGridView はテーブルではなく DataView に直接バインドされるため、次のように設定する必要があります。

DataTable.DefaultView.Sort = String.Empty

テーブルの並べ替えを効果的にクリアし、それによってそれにバインドされているグリッドをクリアします。2005 を使用していない限り、これには DataGridView の更新が必要なようで、別のバインディング マネージャーを使用できます。

于 2009-09-10T19:01:44.013 に答える
1

直接的な答えではありませんが、もちろん「ソートされていない」という適切な定義はありません。ID のような (非表示の) 列で並べ替えることはできませんか?

于 2009-09-09T21:27:16.923 に答える
1

user2268720からの回答と同じドメインで..最もクリーンなソリューションではありませんが、バインドされていないDGVで私のために仕事をしました:

            if (dgv.SortedColumn != null) {
                DataGridViewColumn col = dgv.SortedColumn;
                col.SortMode = DataGridViewColumnSortMode.NotSortable;
                col.SortMode = DataGridViewColumnSortMode.Automatic;
            }
于 2014-01-27T15:08:12.183 に答える