none
关于TreeView控件使用HierarchicalDataTemplate后如何注册TreeViewItem的Expanded事件 RRS feed

  • 问题

  • TreeView.itemstemplate 为一个
     HierarchicalDataTemplate
    <StackPanel>
     ....
    </StackPanel>

    然后 TreeView.items = 子定义的一个树结构的类

    请问.TreeView加载之后 有TreeViewItem 我如何在绑定的时候注册其Expanded

    2009年12月16日 14:16

答案

  • 你好,
       
         在你的hierachytemplate中控件的loaded事件中, 用visualtreehelper从visual tree中取得相应的TreeViewItem并且为它添加事件. 
         这是我所知道的方法.
       
        当然你也可以不用hierachytemplate, 自己写多极template这样的话, 在编码的时候就可以直接注册事件了 
        
        推荐你写一些Generic的方法自下上(VisualTreeHelper.GetParent(x))找TreeViewItem,因为要通过硬编码的话至少要取4-5次的parent才能够获得TreeViewItem.

    2009年12月21日 12:20