TreeItem滚动到所选项目

时间:2012-09-19 19:53:08

标签: c# .net wpf

有没有人知道如何将TreeItem滚动到所选项目。 我一直在谷歌搜索,但不清楚结果对我有用。我试过BringIntoView()但是它没有用......

1 个答案:

答案 0 :(得分:0)

一个简单的解决方案是使用绑定到所选项的行为,请参阅: Data binding to SelectedItem in a WPF Treeview。 将OnSelectedItemPropertyChanged修改为:

private static void OnSelectedItemPropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
{
  ((BindableSelectedItemBehavior) sender).OnSelectedItemChanged(e.NewValue);
}

private void OnSelectedItemChanged(object newValue)
{
  var treeViewItem = AssociatedObject.ItemContainerGenerator.ContainerFromItem(newValue) as TreeViewItem;
  treeViewItem.SetValue(TreeViewItem.IsSelectedProperty, true);
  treeViewItem.BringIntoView();
}