0

我添加了 RibbonControlGroup 作为我的 RibbonButton 的容器:

                <RibbonGroup>
                  <RibbonControlGroup>
                    <RibbonButton/>
                    <RibbonButton/>
                  </RibbonControlGroup>
                </RibbonGroup>

但是如何删除按钮之间的垂直分隔线System.Windows.Controls.Ribbon.RibbonControlGroup呢?

我有<Setter Property="BorderBrush" Value="Transparent"/>RibbonGroup、RibbonControlGroup 和 RibbonButton 的样式定义,但同样的问题仍然存在......

截屏:

在此处输入图像描述

4

2 回答 2

1

各种 RibbonControls 的 ControlTemplate 具有在控件组中添加右侧边框的触发器(即 IsInControlGroup 属性为 True):

<!-- IsInControlGroup -->
<Trigger Property="IsInControlGroup" Value="True">
    <Setter TargetName="OuterBorder" Property="BorderBrush" Value="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Ribbon.BorderBrush}" />
    <Setter TargetName="OuterBorder" Property="BorderThickness" Value="0,0,1,0" /> 
    <Setter TargetName="OuterBorder" Property="CornerRadius" Value="0" />
    <Setter TargetName="InnerBorder" Property="CornerRadius" Value="0" />
</Trigger>

我编辑了这一行:

<Setter TargetName="OuterBorder" Property="BorderThickness" Value="0,0,1,0" /> 

至 :

<Setter TargetName="OuterBorder" Property="BorderThickness" Value="0,0,0,0" /> 

或者,您可以删除整个触发器。

注意:我的位于 ControlsLibrary 项目的 Themes 文件夹中的 Generic.xaml 中,顶部有以下内容

<!--=================================================================
Copyright (C) Microsoft Corporation.  All rights reserved.

This file was generated from individual xaml files found
   in wcp\themes\xaml\, please do not edit it directly.

To generate this file, bcz in Wcp\Themes\Generator and copy 
   the generated theme files from the output directory to
   the corresponding themes\ folder.

To automatically copy the files, set the environment variable
   set THEMEXAML_AUTOUPDATE=1

==================================================================-->

因此,您可能需要复制或重新生成。

于 2013-11-26T15:51:54.073 回答
0

Button我在 my中的 s 之间没有任何垂直线RibbonControl,只是在各个RibbonGroups 之间……你能给我们看一张它的屏幕截图吗?

由于我看不到这些行,我不确定这是否可行,但您可以尝试将Style这样的内容添加到Resources您的部分RibbonGroup

<Style TargetType="{x:Type Ribbon:RibbonSeparator}">
    <Setter Property="Visibility" Value="Collapsed" />
</Style>

我通常对对象之间的线使用这样的RibbonGroup东西,但不是在Buttons 之间,但它可能会起作用。

于 2013-10-11T11:13:48.827 回答