WPF问题 - treeview ContainerFromItem无法获取TreeViewItem

在WPF的TreeView中,ContainerFromItem方法在处理多级树形结构时,遇到一个问题:对于第二级及以下的节点无法正确获取TreeViewItem。在PreviewMouseDown事件中,当需要判断新选中项与当前选中项是否相同时,这个问题导致了逻辑判断的困扰。解决方案是:由于每个TreeViewItem下存在ItemsControl,应当从直接父元素而非根元素调用ContainerFromItem方法。另一种解决办法是利用后台数据绑定来判断节点是否特定项。
摘要由CSDN通过智能技术生成

TreeView中的ContainerFromItem经常用到,这里给出一个场景:

PreviewMouseDown事件判断将要选中的TreeViewItem是否和当前选中项相同,不同时需要执行一断逻辑判断,从而决定是否切换。

示例

树形控件显示可能多级,如下示例中的树形控件:
这里写图片描述

对于第一级,使用ContainerFromItem可以正确获取到相应的TreeViewItem。

这里写图片描述

对于第二级,则无法获取到。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值