如何在WPF的功能区中隐藏快速访问工具栏?
当Ribbon控件位于RibbonWindow中时,快速访问工具栏会自动隐藏。如果不是,似乎无法隐藏它。我已经在这个问题上工作了几个小时,无法正确隐藏它。但是有一个简单的解决方法:将Ribbon控件放在Panel中并给它一个负的上边距,这样它就会滑出Panel。将Panel的ClipToBounds属性设置为true,将隐藏QAT。顺便说一句 - WPF有多个功能区实现,即使是微软自己(“Fluent Ribbon”和“Microsoft Ribbon for WPF”),所以下次你应该提到你正在谈论的那个。
对于Microsoft Ribbon for WPF,您可以使用VisualTreeHelper
隐藏它。在Loaded
事件处理程序上,只需将包含快速访问工具栏的行的大小调整为0:
private void RibbonLoaded(object sender, RoutedEventArgs e)
{
Grid child = VisualTreeHelper.GetChild((DependencyObject)sender, 0) as Grid;
if (child != null)
{
child.RowDefinitions[0].Height = new GridLength(0);
}
}
或者,如果你想在XAML中使用它,那么这是有效的
<ribbon:Ribbon>
<ribbon:Ribbon.Loaded>CollapseQuickAccessToolbar</ribbon:Ribbon.Loaded>
<x:Code>
private void CollapseQuickAccessToolbar(Object sender, RoutedEventArgs e) {
((Grid)VisualTreeHelper.GetChild((DependencyObject)sender, 0)).RowDefinitions[0].Height = new GridLength(0);
}
</x:Code>
</ribbon:Ribbon>
这是解决方案:
this.ribbonControl1.ToolbarLocation = DevExpress.XtraBars.Ribbon.RibbonQuickAccessToolbarLocation.Hidden;
派对迟到了。
<my:Ribbon >
<my:Ribbon.ApplicationMenu >
<my:RibbonApplicationMenu Visibility="Collapsed">
</my:RibbonApplicationMenu>
</my:Ribbon.ApplicationMenu>
这将有助于隐藏快速栏
我知道这是一个旧帖子,但找到了一个更简单的解决方案...在功能区内添加: -
<ribbon:Ribbon.QuickAccessToolBar>
<ribbon:RibbonQuickAccessToolBar Visibility="Collapsed"/>
</ribbon:Ribbon.QuickAccessToolBar>