我在WPF应用程序中有一个TreeView,它有一个在TreeView本身之外更改的索引。
如果TreeView不在焦点范围内,如何使用ScrollIntoView(像DataGrid这样的函数)选项?
非常感谢。
答案 0 :(得分:10)
尝试使用TreeView的Expanded事件,如下所示:
private static void TreeView1_Expanded(object sender, RouterEventArgs e)
{
var tvItem = (TreeViewItem)e.OriginalSource;
var itemCount = VisualTreeHelper.GetChildrenCount(tvItem)
for (var i = itemCount-1; i>=0; i--)
{
var child = VisualTreeHelper.GetChild(tvItem, i);
((FrameworkElement)child).BringIntoView();
}
}