2010-06-07 24 views
10

Wie kann ich Vertikaler Trenner zu WPF Ribbon, zu RibbonGroup hinzufügen? Ich habe so etwas probiert, aber ich habe einen horizontalen Separator anstelle der Vertikalen.Vertikaler Separator in WPF Ribbon

<r:RibbonGroup> 
<r:RibbonButton Command="{StaticResource SomeButton}" />  
<r:RibbonSeparator></r:RibbonSeparator> 
<r:RibbonToggleButton IsChecked="False" Command="{StaticResource AnotherButton}"/></r:RibbonToggleButton> 
</r:RibbonGroup> 

Also wie kann ich vertikale Trennzeichen machen?

+0

Welche Ribbon Control verwenden Sie? Und welche .NET/WPF-Version? –

+0

Ich benutze Ribbon von RibbonControlsLibrary (Microsoft.Windows.Controls.Ribbon) und 3.5 .NET Framework – Marta

Antwort

10

Dies ist, wie ich es tun würde.

<ribbon:RibbonGroup.Resources> 
    <!-- Vertical Separator--> 
    <Style TargetType="{x:Type ribbon:RibbonSeparator}" 
      x:Key="KeyRibbonSeparatorVertical"> 
     <Setter Property="LayoutTransform"> 
      <Setter.Value> 
       <RotateTransform Angle="90"/> 
      </Setter.Value> 
     </Setter> 
    </Style> 
</ribbon:RibbonGroup.Resources> 
+0

Diese Lösung funktioniert in der neuen Ribbon-Version. Die Lösung mit RibbonLabel funktioniert jetzt nicht, weil RibbonLabel in der neuen wpf-Multifunktionsleiste nicht vorhanden ist. – Marta

2

Sie können ein RibbonLabel verwenden, das ein beliebiges Steuerelement in einer RibbonGroup hosten kann. Es ist sehr praktisch!

Für eine vertikale Linie Separator, können Sie dies versuchen:

<ribbon:RibbonLabel> 
    <Rectangle Height="56" Margin="2,0" Stroke="Silver"/> 
</ribbon:RibbonLabel> 

(Natürlich können Sie es Art, wie Sie für die App sehen, passen ..)

+0

Vielen Dank! Es funktionierte genau so, wie ich es wollte :) – Marta

5

Es sieht aus wie das ‚doesn Ich arbeite nicht mehr in der neuesten Version (3.5.40729.1). Die RibbonSeparator doesn auch; t Arbeit, aber Sie können verwenden:

<Ribbon:RibbonControlGroup Height="55" Margin="5" Width="1" MinHeight="55" MaxWidth="1"/> 
1

Sie wickeln können, was Sie in einem RibbonGroup haben, eine vertikale Trenn wird rechts von der Gruppe erstellt.

Vertical Ribbon Separator using RibbonGroup as wrapper

Alles, was ich war die erste Schaltfläche in einem RibbonGroup eingewickelt war.

<ribbon:RibbonTab x:Name="HomeTab" 
        Header="Home"> 
    <ribbon:RibbonGroup x:Name="Group1" 
         Header="Group1"> 
     <ribbon:RibbonGroup> 
      <ribbon:RibbonButton x:Name="Button1" 
          LargeImageSource="Images\LargeIcon.png" 
          Label="Button1" Margin="-5" /> 
     </ribbon:RibbonGroup> 

     <ribbon:RibbonButton x:Name="Button2" 
          SmallImageSource="Images\SmallIcon.png" 
          Label="Button2" /> 
     <ribbon:RibbonButton x:Name="Button3" 
          SmallImageSource="Images\SmallIcon.png" 
          Label="Button3" /> 
     <ribbon:RibbonButton x:Name="Button4" 
          SmallImageSource="Images\SmallIcon.png" 
          Label="Button4" /> 
    </ribbon:RibbonGroup> 

</ribbon:RibbonTab> 
0

für mich Dies funktionierte:

<Border Width="1" Margin="3" Height="175" Visibility="Visible" Background="#FFB9C9DA" /> 
+0

oder wenn Sie hardcoded Farbe vermeiden möchten, verwenden Sie die Bindung für Background = "{Binding Path = BorderBrush, RelativeSource = {RelativeSource FindAncestor, AncestorType = {x: Geben Sie mein: Ribbon ein}}}" – akovar

Verwandte Themen