我想在我单击的列的位置上显示一个新窗口。在窗口中将决定,如果数据网格的内容被过滤或数据网格将按单击的列排序。
单击数据网格的列标题时,默认情况下,数据网格中的内容将进行排序。我试图将dataGrid的"CanUserSortColumns"属性设置为false。但是我找不到在 dataGrid 排序后触发的事件以再次启用排序。到目前为止,我已经尝试了Click,PrewievMouseUp,MouseUp,Loaded和TargetUpdate。
ColumnHeader的"Click"事件仍将触发,因此我可以启用排序,但如果禁用了"CanUserSortColumns",则在悬停 ColumnHeader 时没有足够的可视指示器。
尝试使用排序事件:
DataGrid.Sorting += DataGridOnSorting;
并将窗口逻辑放在处理程序中:
private void DataGridOnSorting(object sender, DataGridSortingEventArgs e)
{
// Your window logic.
e.Handled = true;
}