WPF TreeView 相关技巧

本文介绍WPF中TreeView的实用技巧,包括如何正确响应TreeViewItem的双击事件,自定义节点样式及Tooltip,避免常见陷阱,提升用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

WPF 中的 TreeView 相关实用技巧如下

响应 TreeViewItem 的双击事件

这是一个较怪异的问题,如果在 TreeView 的 MouseDoubleClick 中去处理 SelectedItem 时,则在当一个树节点下只有一个子节点时,双击该子节点会转到它的父节点上。

使用方法应当是这样。先在 TreeView 中定义如下资源(注意是 TreeView 的资源)

<TreeView.Resources>
    <Style TargetType="{x:Type TreeViewItem}" BasedOn="{StaticResource {x:Type TreeViewItem}}">
        <EventSetter Event="MouseDoubleClick" Handler="OnItemMouseDoubleClick"/>
    </Style>
</TreeView.Resources>

然后,在 OnItemMouseDoubleClick 中使用 Sender 作为双击的节点即可。

private void OnItemMouseDoubleClick(object sender, MouseButtonEventArgs e)
{
    TreeViewItem item = (TreeViewItem) sender;
    //do it...
}

 

自定义节点样式

节点的 Header 是一个 Object 对象,因此,可以定义一个自定义控件,实例化后赋值给它就可以了。

自定义节点的 Tooltip

同自定义节点样式一样。

转载于:https://www.cnblogs.com/xiefang2008/p/9993544.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值