WPF功能区 - 隐藏快速访问工具栏

red*_*man 14 wpf ribbon

如何在WPF的功能区中隐藏快速访问工具栏?

Phi*_*oie 40

对于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);
  }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • 这应该标记为最终答案. (9认同)
  • 太糟糕了,它不能修复设计器窗口,但我可以忍受。击败这里的其他解决方案 (2认同)

Dan*_*hat 12

当Ribbon控件位于RibbonWindow中时,快速访问工具栏会自动隐藏.如果不是,似乎无法隐藏它.我已经在这个问题上工作了几个小时,无法正确隐藏它.但是有一个简单的解决方法:将Ribbon控件放在Panel中并给它一个负的上边距,这样它就会滑出Panel.将Panel的ClipToBounds属性设置为true,将隐藏QAT.顺便说一句 - WPF有多个功能区实现,即使是微软自己(" Fluent Ribbon "和"Microsoft Ribbon for WPF"),所以下次你应该提到你正在谈论的那个.

  • 请注意,如果您像我一样从库存的RibbonWindow开始:我在XAML和代码隐藏中将窗口类型都更改为Window,将ClipToBounds =“ true”添加到LayoutRoot网格中,并为功能区的上边距设置了-22 。 (2认同)