首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF Listview Columnheader Click事件

WPF Listview Columnheader Click事件
EN

Stack Overflow用户
提问于 2010-09-15 18:41:16
回答 1查看 2.4K关注 0票数 0

我在WPF中有一个ListView (GridView),我正在尝试根据http://msdn.microsoft.com/en-us/library/ms745786.aspx实现排序。在我的例子中,其中一列的单元格模板包含一个Expander。现在,当我单击扩展器标题时,将触发GridViewColumnHeader.Click事件。如何防止这种情况发生?

EN

回答 1

Stack Overflow用户

发布于 2010-09-15 19:31:51

如果什么都不需要发生,用e.Cancel = true取消它。在我的一个项目中,我有一些类似的东西,我不希望用户重新排序列:

代码语言:javascript
复制
private void DataGrid_ColumnReordering(object sender, Microsoft.Windows.Controls.DataGridColumnReorderingEventArgs e)
{
    e.Cancel = true;
}

然后,在XAML中,我有:

代码语言:javascript
复制
<toolkit:DataGrid ItemsSource="{Binding JournalItems}" 
                  AutoGenerateColumns="True"
                  ColumnReordering="DataGrid_ColumnReordering">

这是WPF Toolkit数据网格,但e.Cancel = true应该适用于任何控件。

如果在用户单击此标头时需要发生其他事情,您也可以在该方法中处理它。

如果您需要以不同的方式处理这些情况,您可以检查发送者以查看用户单击的位置(在扩展器上或在网格视图标题上)。如果发送者是扩展器,则取消它。如果发送者是网格视图标题,则让排序继续进行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3716819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档