我有一个带有TabControl的窗口,其中包含两个TabItems (让我们称它们为"A“和"B")。选项卡A有几个ContextMenus:我希望每个MenuItem都将TabItem更改为Tab B。理想情况下,我会编写一个MenuItem模板,在选择MenuItem时切换选项卡。这个是可能的吗?
编辑:我最后使用的解决方案依赖于从基本样式派生的MenuItems中的ContextMenus,该样式定义了单击事件和处理程序:
<Window.Resources>
<ResourceDictionary>
<Style TargetType="MenuItem" x:Key="ContextMenuItemBase">
... (various stylings)
<EventSetter Event="Click" Handler="MenuItem_Clicked"/>
</Style>
</ResourceDictionary>
</Window.Resources>我将选项卡控件和要切换到的选项卡项命名为:
<TabControl x:Name="tcTabs">
...
<TabItem Header="Results" x:Name="tiResultsTab">然后在MainWindow.xaml.cs代码隐藏文件中:
private void MenuItem_Clicked(object sender, RoutedEventArgs e)
{
tcTabs.SelectedItem = tiResultsTab;
}发布于 2016-03-24 14:35:10
订阅菜单选择事件。在处理操作的方法中,提取通过识别Sender的方法参数调用的菜单(可能用其他选项卡的引用(?)标记Tag属性)。然后更改为适当的目标选项卡。
https://stackoverflow.com/questions/36186045
复制相似问题