2015-04-01 44 views
0

我正在使用以下代碼來嘗試我的應用程序具有與Office 2013相同的格式,您只能添加對WPF 4.5附帶的項目的引用並且是System.Windows.Controls.Ribbon。我有一個問題,我需要,當你選擇一個標籤,那就是缺少線齊全,附圖片:Ribbon Office 2013模板

enter image description here

<Window x:Class="WpfApplication1.MainWindow" 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      WindowStartupLocation="CenterScreen"> 

     <Window.Resources> 

      <Style TargetType="Ribbon"> 
       <Setter Property="Background" Value="White"/> 
       <Setter Property="Foreground" Value="Black"/> 
       <!--<Setter Property="BorderBrush" Value="{x:Null}"/>--> 
       <!-- TODO Template 

       But how does this work? :/ 
      --> 
      </Style> 

      <Style TargetType="RibbonGroup"> 
       <Setter Property="Background" Value="Transparent"/> 
       <!--<Setter Property="MouseOverBackground" Value="Transparent"/> 
       <Setter Property="MouseOverBorderBrush" Value="Transparent"/>--> 
      </Style> 



      <Style TargetType="RibbonTabHeader"> 
       <Setter Property="Background" Value="White"/> 
       <Setter Property="BorderBrush" Value="Transparent"/> 
       <Setter Property="FontSize" Value="13"/> 
       <Setter Property="Padding" Value="15,2,15,2"/> 
       <Setter Property="BorderThickness" Value="1,1,1,5"/> 
       <Setter Property="Margin" Value="1,0,1,0"/> 
       <Setter Property="Template"> 
        <Setter.Value> 
         <ControlTemplate TargetType="RibbonTabHeader"> 
          <ControlTemplate.Resources> 
           <SolidColorBrush x:Key="CheckedBackground" Color="#FFF5F6F7"/> 
           <SolidColorBrush x:Key="CheckedBorderBrush" Color="#FFDBDCDD"/> 
           <!--<SolidColorBrush x:Key="FocusedBackground" Color="#FFFDFDFF"/> 
           <SolidColorBrush x:Key="FocusedBorderBrush" Color="#FFEDEEEE"/> 
           <SolidColorBrush x:Key="MouseOverBackground" Color="#FFFDFDFF"/> 
           <SolidColorBrush x:Key="MouseOverBorderBrush" Color="#FFEDEEEE"/>--> 
          </ControlTemplate.Resources> 

          <Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"> 
           <ContentPresenter Margin="{TemplateBinding Padding}" HorizontalAlignment="Center" VerticalAlignment="Center" RecognizesAccessKey="True"/> 
          </Border> 

        <ControlTemplate.Triggers> 
         <Trigger Property="IsRibbonTabSelected" Value="True"> 
          <Setter Property="Background" Value="{DynamicResource CheckedBackground}"/> 
          <!--<Setter Property="BorderBrush" Value="{DynamicResource CheckedBorderBrush}"/>--> 
          <Setter Property="BorderBrush" Value="#FFB9C9DA"/> 
          <Setter Property="Foreground" Value="Blue"/> 
         </Trigger> 
         <Trigger Property="IsMouseOver" Value="True"> 
          <!--<Setter Property="Background" Value="{DynamicResource CheckedBackground}"/>--> 
          <!--<Setter Property="BorderBrush" Value="{DynamicResource CheckedBorderBrush}"/>--> 
          <!--<Setter Property="BorderBrush" Value="#FFB9C9DA"/>--> 
          <Setter Property="Foreground" Value="Blue"/> 
         </Trigger> 
         <!--<MultiTrigger> 
          <MultiTrigger.Conditions> 
           <Condition Property="IsRibbonTabSelected" Value="False"/> 
           <Condition Property="IsMouseOver" Value="True"/> 
          </MultiTrigger.Conditions> 
          <Setter Property="Background" Value="{DynamicResource MouseOverBackground}"/> 
          <Setter Property="BorderBrush" Value="{DynamicResource MouseOverBorderBrush}"/> 
         </MultiTrigger>--> 
        </ControlTemplate.Triggers> 
         </ControlTemplate> 
        </Setter.Value> 
       </Setter> 
      </Style> 

     </Window.Resources> 

     <Grid> 

      <Ribbon> 
       <RibbonTab Header="INICIO"> 
        <RibbonGroup Header="Portapapeles"> 
         <RibbonButton Label="Hola" LargeImageSource="Imágenes/Artículo.png" Height="Auto" VerticalAlignment="Top"/> 
        </RibbonGroup> 
        <RibbonGroup Header="Fuente"> 
         <RibbonButton Content="Fuente"/> 
        </RibbonGroup> 
       </RibbonTab> 
       <RibbonTab Header="INSERTAR"/> 
       <RibbonTab Header="DISEÑO"/> 
       <Ribbon.ApplicationMenu> 
        <RibbonApplicationMenu SmallImageSource="Imágenes/Usuario.png"> 
         <RibbonApplicationMenuItem Width="Auto" Header="Iniciar sesión..." ImageSource="Imágenes/Usuario.png"/> 
         <RibbonApplicationMenuItem Width="Auto" Header="Cambiar contraseña..." ImageSource="Imágenes/Usuario.png"/> 
         <RibbonApplicationMenuItem Width="Auto" Header="Cerrar sesión..." ImageSource="Imágenes/Usuario.png"/> 
        </RibbonApplicationMenu> 
       </Ribbon.ApplicationMenu> 
      </Ribbon> 

     </Grid> 
    </Window> 
+0

爲什麼不使用來自ms的ribboncontrols nuget包? – 2015-04-01 05:07:02

+0

這個? http://www.microsoft.com/en-us/download/details.aspx?id=11877 – avechuche 2015-04-01 05:19:50

+0

是的,就是那個。 – 2015-04-01 05:20:32

回答

相關問題