0
如果这不是最好的解决方法,请随时提出一个替代方法来解决我的问题。我可以在XAML中设置ToolBar项目吗?
我有一个ToolBarTray和一个TreeView。该树有两个项目分别是Concrete1和Concrete2类。我希望工具栏具有不同的菜单,具体取决于树中选择哪种类型的项目。
<ToolBarTray DockPanel.Dock="Top">
<ToolBar>
<ToolBar.Style>
<Style TargetType="{x:Type ToolBar}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=tree, Path=SelectedItem, Converter={StaticResource convert}}" Value="{x:Type root:Concrete1}">
<!--what do i do here??-->
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=tree, Path=SelectedItem, Converter={StaticResource convert}}" Value="{x:Type root:Concrete2}">
<!--what do i do here??-->
</DataTrigger>
</Style.Triggers>
</Style>
</ToolBar.Style>
<ToolBar.Resources>
<Menu x:Key="awd">
<MenuItem Header="AWD"></MenuItem>
</Menu>
<Menu x:Key="dwa">
<MenuItem Header="DWA"></MenuItem>
</Menu>
</ToolBar.Resources>
</ToolBar>
</ToolBarTray>
<TreeView x:Name="tree" ItemsSource="{Binding Families}"></TreeView>
我已经尽可能地设置任何常规属性(背景等)的工具栏,具体取决于选择哪个项目。我不知道如何继续添加特定的菜单到工具栏。