问题描述:TreeView控件不具有SelecedItem 和 SelectedIndex 属性,其内部元素的选中特性由TreeViewItem 的 IsSeleced 属性控制。默认情况下启动时,TreeView不存在任何选中项,这往往不是我们想要的,用户更多地是希望启动时默认选择第一个节点,使得界面不至于以空白形式呈现。
XAML
<TreeView.ItemContainerStyle> <Style TargetType="{x:Type TreeViewItem}"> <Setter Property="IsSelected" Value="{Binding IsSelected}"/> </Style> </TreeView.ItemContainerStyle>
MVVM property
private bool isSelected; public bool IsSelected { get { return isSelected; } set { isSelected = value; OnPropertyChanged("IsSelected"); } }
View Model
// 首个节点 Node topNode = new Node(); topNode.IsSelected = true; // 其他子节点 child.IsSelected = false;
参考资料
Select topnode by default in Treeview wpf MVVM