C# 在运行时使用WPF-MVVM展开所有WPF TreeView节点

C# 在运行时使用WPF-MVVM展开所有WPF TreeView节点,c#,wpf,xaml,mvvm,treeview,C#,Wpf,Xaml,Mvvm,Treeview,我想在用户设置复选框时展开所有TreeView项我可以在应用程序启动时使用样式: <TreeView.ItemContainerStyle> <Style TargetType="{x:Type TreeViewItem}"> <Setter Property="IsExpanded" Value="True"/>

我想在用户设置复选框时展开所有TreeView项我可以在应用程序启动时使用样式:

       <TreeView.ItemContainerStyle>
                        <Style TargetType="{x:Type TreeViewItem}">
                          <Setter Property="IsExpanded" Value="True"/>
                        </Style>
       </TreeView.ItemContainerStyle> 

但它不起作用。任何人都知道如何做这样的事情。

只要将
树视图项.IsExpanded
绑定到
复选框。IsChecked
。请注意,您必须使用converter将
bool?
转换为
bool

谢谢,它可以工作,但当用户折叠任何节点时,即使取消选中并重新选中复选框,它仍然会折叠。您知道如何修复它吗?
  <TreeView.ItemContainerStyle>
              <Style TargetType="{x:Type TreeViewItem}">
                  <Setter Property="IsExpanded" Value="{Binding ExpandAllItems }"/>
              </Style>
  </TreeView.ItemContainerStyle>
 public bool ExpandAllItems ;