【发布时间】:2010-11-26 03:45:11
【问题描述】:
我想为我的树视图中的树视图项的任何扩展获取事件。
这个原因,和原来的问题有点无关: 我正在创建一个与 xml 文件树密切相关的树,但我允许在 xml 中包含一个包含元素,因此树可以跨越多个文件。我想在展开时在我的树视图中设置树视图项的 itemssource 属性。
【问题讨论】:
标签: c# wpf data-binding treeview
我想为我的树视图中的树视图项的任何扩展获取事件。
这个原因,和原来的问题有点无关: 我正在创建一个与 xml 文件树密切相关的树,但我允许在 xml 中包含一个包含元素,因此树可以跨越多个文件。我想在展开时在我的树视图中设置树视图项的 itemssource 属性。
【问题讨论】:
标签: c# wpf data-binding treeview
您可以使用TreeViewItem.Expanded 事件作为附加事件:
<TreeView TreeViewItem.Expanded="TreeViewItem_Expanded"
ItemsSource="{Binding}">
...
</TreeView/>
在代码隐藏中,您可以使用OriginalSource 属性识别启动事件的TreeViewItem:
private void TreeViewItem_Expanded(object sender, RoutedEventArgs e)
{
TreeViewItem tvi = e.OriginalSource as TreeViewItem;
if (tvi != null)
{
MessageBox.Show(string.Format("TreeNode '{0}' was expanded", tvi.Header));
}
}
【讨论】: