How to programmatically select an item in a WPF TreeView?

后端 未结 16 2366
时光取名叫无心
时光取名叫无心 2020-11-28 08:42

How is it possible to programmatically select an item in a WPF TreeView? The ItemsControl model seems to prevent it.

16条回答
  •  天命终不由人
    2020-11-28 08:55

    I wrote an extension method:

    using System.Windows.Controls;
    
    namespace Extensions
    {
        public static class TreeViewEx
        {
            /// 
            /// Select specified item in a TreeView
            /// 
            public static void SelectItem(this TreeView treeView, object item)
            {
                var tvItem = treeView.ItemContainerGenerator.ContainerFromItem(item) as TreeViewItem;
                if (tvItem != null)
                {
                    tvItem.IsSelected = true;
                }
            }
        }
    }
    

    Which I can use like this:

    if (_items.Count > 0)
        _treeView.SelectItem(_items[0]);
    

提交回复
热议问题