2010-06-07 21 views
10

Jak mogę dodać separator pionowy do WPF Wstążki, aby RibbonGroup? Próbowałem czegoś takiego, ale mam poziomy pionizator.pionowy separator w WPF Ribbon

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

Jak zatem utworzyć pionowy separator?

+0

Co Ribbon sterowania używasz? I która wersja .NET/WPF? –

+0

Używam wstążki z RibbonControlsLibrary (Microsoft.Windows.Controls.Ribbon) i 3.5 .NET Framework – Marta

Odpowiedz

10

Tak to zrobię.

<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

To rozwiązanie działa w nowej wersji wstążki. Rozwiązanie z RibbonLabel nie działa teraz, ponieważ nie ma Ribbon Label w nowym Wstążce wpf. – Marta

2

Można użyć RibbonLabel, w której można zorganizować żadnej kontroli w RibbonGroup. Jest bardzo przydatny!

Na pionowej linii rozdzielającej, można spróbować to:

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

(Oczywiście, można projektować je, jak widać pasuje do aplikacji ..)

+0

Wielkie dzięki! Działało dokładnie tak, jak chciałem :) – Marta

5

Wygląda to robi” t działają już w najnowszej wersji (3.5.40729.1). Narzędzie RibbonSeparator również nie działa, ale można użyć:

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

Można owinąć co masz w RibbonGroup, pionowy separator jest tworzony z prawej strony grupy.

Vertical Ribbon Separator using RibbonGroup as wrapper

Wszystko zrobiłem był owinięty pierwszy przycisk w RibbonGroup.

<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

Ten pracował dla mnie:

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

lub jeśli chcesz uniknąć powiązania z ustalonym kolorem użyj tła = "{Ścieżka powiązania = BorderBrush, RelativeSource = {RelativeSource FindAncestor, AncestorType = {x: Wpisz my: Wstążka}}}" – akovar