2017-05-16 2 views
0

クリックした列の位置に新しいウィンドウを表示したい。このウィンドウでは、dataGridの内容がフィルタリングされるか、dataGridがクリックされた列によってソートされるかが決定されます。WPF dataGridのソートを一度中止する

DataGridのColumnHeaderをクリックすると、DataGridのコンテンツがデフォルトでソートされます。私は、DataGridの "CanUserSortColumns"プロパティをfalseに設定しようとしました。しかし、ソートを再度有効にするためにdataGridのソート後にトリガするイベントは見つかりません。 Click、PrewievMouseUp、MouseUp、Loaded、TargetUpdatedまでこれまで試みました。

ColumnHeaderの "Click"イベントは引き続きトリガされるので、並べ替えを有効にできますが、 "CanUserSortColumns"が無効の場合、ColumnHeaderをホバーしている間はビジュアルインジケータが表示されません。

答えて

1

イベントを並べ替える使用してみてください:

DataGrid.Sorting += DataGridOnSorting; 

ハンドラであなたの窓のロジックを置く:

private void DataGridOnSorting(object sender, DataGridSortingEventArgs e) 
{ 
    // Your window logic. 
    e.Handled = true; 
} 
関連する問題