2017-05-15 16 views
5

ソート可能な列はほとんどなく、不可能な列はほとんどないWinforms DataGridViewがあります。私はC#DataGridView列ヘッダーからソートアイコンを無効にする

dgvConnections_ColumnHeaderMouseClickイベントハンドラで

dgvConnections.Columns[e.ColumnIndex].SortMode = DataGridViewColumnSortMode.NotSortable;を設定しているが、私はその存在として、列ヘッダからアイコンの並べ替えを取り除くことができません私のGridViewをソートしたくない列の場合 ユーザーに混乱を引き起こす可能性があります。

ソートすることができない列から並べ替えアイコンを削除する方法を教えてください。前もって感謝します!

+1

[並べ替え機能を削除せずにDataGridviewで並べ替えグリフを削除する方法](http://stackoverflow.com/questions/11912382/how-to-remove-sorting-glyph-in-datagridview-without-removing- sorting-facility) –

+0

ソートモードをコード内の任意の場所に自動設定していますか? –

+0

@KarthikAMRはい!わたし。しかし、それはグリッドビューの初期ソートに必要なメソッドです。 –

答えて

3

正しい実行順序を維持していないようです。あなたが書いたコードは、仕事をするでしょう

dgvConnections.Columns[e.ColumnIndex].SortMode = DataGridViewColumnSortMode.NotSortable; 

しかし、あなたがDataGridViewを初期化した後にそれを呼んでいることを確認してください。

質問に記載されているような特定の列に対しては、インデックスを見つけてsortmodeを設定する必要があります。

+0

私はあなたが正しいと思います。私はちょうど私が以下のようなアイコンを取り除くために必要な列の条件を追加しました。それは働いた!ありがとう! IF(mSortColumn == 0 || mSortColumnの== 5) {dgvConnections.Columns [mSortColumn] .SortMode = DataGridViewColumnSortMode.NotSortable。 リターン; } –