UltraGrid のヘッダークリック時のソートを抑止したい場合は、UltraGridのDisplayLayoutのOverrideのHeaderClickActionプロパティで設定可能です。
ultraGrid1.DisplayLayout.Override.HeaderClickAction = HeaderClickAction.Select; ultraGrid1.DisplayLayout.Override.SelectTypeCol = SelectType.None;
BeforeSortChange イベントをキャンセル、でも抑止できます
void ultraGrid1_BeforeSortChange(object sender, Infragistics.Win.UltraWinGrid.BeforeSortChangeEventArgs e) { e.Cancel = true; }
もし特定の列のみソートを抑止したいという場合は、該当列の場合のみイベントをキャンセルしてください。例えば、「Col1」列のみソートを抑止したい場合は、次のようになります。
private void ultraGrid1_BeforeSortChange(object sender, Infragistics.Win.UltraWinGrid.BeforeSortChangeEventArgs e) { if (e.SortedColumns.Count > 0 && e.SortedColumns[0].Key == "Col1") { e.Cancel = true; } }
API リファレンス
- 「HeaderClickAction プロパティ」
- 「SelectTypeCol プロパティ」
- 「BeforeSortChange イベント」