流畅的功能区选项卡项单击事件
本文关键字:单击 事件 选项 功能区 | 更新日期: 2023-09-27 17:56:39
我正在使用流利功能区并遇到了这个问题。我添加了一些功能区选项卡项,并希望在用户单击它们时执行某些内容
<Fluent:RibbonTabItem Name="TabItem" MouseLeftButtonDown="TabItem_MouseLeftButtonDown">
<Fluent:RibbonGroupBox Header="">
<Fluent:Button/>
<Fluent:Button/>
</Fluent:RibbonGroupBox>
<Fluent:RibbonGroupBox Header="">
<Fluent:Button Name="General" Header="General" Click="General_Click" />
</Fluent:RibbonGroupBox>
</Fluent:RibbonTabItem>
这是代码的简化部分...但是,如果我单击"常规"按钮,单击事件将按预期触发,但如果单击功能区选项卡项,则没有任何反应。下面是两个事件处理程序
private void TabItem_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
//some code
}
private void General_Click(object sender, RoutedEventArgs e)
{
//more code
}
有谁知道如何触发这个事件?
它比你想象的要简单:Ribbon
类有一个SelectedTabChanged
事件。
每次更改选项卡时都会触发两次:
System.Windows.Controls.SelectionChangedEventArgs
首次包含RemovedItems
中的旧选项卡- 第二次它包含
AddedItems
中的新选项卡。
这两个属性都是object[]
。
只需在属性窗口中查找它,或者让智能感知为您找到它;)
尝试选择功能区对象上的更改事件。