Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 以编程方式隐藏WPF功能区标题_C#_Wpf_Ribbon - Fatal编程技术网

C# 以编程方式隐藏WPF功能区标题

C# 以编程方式隐藏WPF功能区标题,c#,wpf,ribbon,C#,Wpf,Ribbon,我正在使用VS2010的WPF Ribbon应用程序。每个RibbonGroup都有一个标题。即使我将标题留空,功能区仍会为标题保留一个空白空间。如何以编程方式隐藏标题 例如,我有以下Xaml: <ribbon:RibbonTab x:Name="HelpTab" Header="Help" FontSize="10"> <ribbon:RibbonGroup x:Name="HelpGroup"

我正在使用VS2010的WPF Ribbon应用程序。每个RibbonGroup都有一个标题。即使我将标题留空,功能区仍会为标题保留一个空白空间。如何以编程方式隐藏标题

例如,我有以下Xaml:

<ribbon:RibbonTab x:Name="HelpTab"
                    Header="Help" FontSize="10">
    <ribbon:RibbonGroup x:Name="HelpGroup"
                        Header="Help Group" FontFamily="Verdana" FontWeight="Bold">
             <!-- ..... -->
        </ribbon:RibbonButton>
    </ribbon:RibbonGroup>
</ribbon:RibbonTab>
</ribbon:Ribbon>

您可以通过
VisualTreeHelper
执行此操作。只需将行
MinHeight
设置为0:

private void RibbonLoaded(object sender, RoutedEventArgs e)
{
  DependencyObject groupBorder = VisualTreeHelper.GetChild(Foobar, 0);
  Grid groupMainGrid = VisualTreeHelper.GetChild(groupBorder , 0) as Grid;
  if (groupMainGrid != null)
  {
    groupMainGrid.RowDefinitions[2].MinHeight = 0;
  }
} 
groupMainGrid.RowDefinitions[2].Height = 0;
这是假设您没有设置
标题
属性。行的高度默认设置为
Auto
。因此,如果您设置
标题
属性,那么您最好将
高度
设置为0:

private void RibbonLoaded(object sender, RoutedEventArgs e)
{
  DependencyObject groupBorder = VisualTreeHelper.GetChild(Foobar, 0);
  Grid groupMainGrid = VisualTreeHelper.GetChild(groupBorder , 0) as Grid;
  if (groupMainGrid != null)
  {
    groupMainGrid.RowDefinitions[2].MinHeight = 0;
  }
} 
groupMainGrid.RowDefinitions[2].Height = 0;

您可以通过
VisualTreeHelper
执行此操作。只需将行
MinHeight
设置为0:

private void RibbonLoaded(object sender, RoutedEventArgs e)
{
  DependencyObject groupBorder = VisualTreeHelper.GetChild(Foobar, 0);
  Grid groupMainGrid = VisualTreeHelper.GetChild(groupBorder , 0) as Grid;
  if (groupMainGrid != null)
  {
    groupMainGrid.RowDefinitions[2].MinHeight = 0;
  }
} 
groupMainGrid.RowDefinitions[2].Height = 0;
这是假设您没有设置
标题
属性。行的高度默认设置为
Auto
。因此,如果您设置
标题
属性,那么您最好将
高度
设置为0:

private void RibbonLoaded(object sender, RoutedEventArgs e)
{
  DependencyObject groupBorder = VisualTreeHelper.GetChild(Foobar, 0);
  Grid groupMainGrid = VisualTreeHelper.GetChild(groupBorder , 0) as Grid;
  if (groupMainGrid != null)
  {
    groupMainGrid.RowDefinitions[2].MinHeight = 0;
  }
} 
groupMainGrid.RowDefinitions[2].Height = 0;

您始终可以创建堆栈面板而不是功能区组。

您始终可以创建堆栈面板而不是功能区组。

我正在寻找破解以外的解决方案-例如,使用边距将其隐藏..我正在寻找破解以外的解决方案-例如,使用边距将其隐藏。。