答案 0 :(得分:2)
如果您使用的是MVVM,则可以将IsExpanded
绑定到ViewModel
。
XAML是这样的:
<TreeView ItemSource={Binding Items}>
<TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}">
<Setter Property="IsExpanded" Value="{Binding IsExpanded}"/>
</Style>
</TreeView.ItemContainerStyle>
...
</TreeView>
在ViewModel
:
public class Data : INotifyPropertyChanged
{
...
public bool IsExpanded
{
get
{
return _isExpanded;
}
set
{
if (value != _isExpanded)
{
_isExpanded = value;
NotifyPropertyChanged();
}
}
}
...
}
然后,您可以将项目中第一个数据的IsExpanded属性设置为true,而其他数据则为false。
(不幸的是我现在无法测试,但我认为这会有所帮助)