You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
319 lines
17 KiB
319 lines
17 KiB
<!--***************************************************************************************
|
|
|
|
Toolkit for WPF
|
|
|
|
Copyright (C) 2007-2017 Xceed Software Inc.
|
|
|
|
This program is provided to you under the terms of the Microsoft Public
|
|
License (Ms-PL) as published at http://wpftoolkit.codeplex.com/license
|
|
|
|
For more features, controls, and fast professional support,
|
|
pick up the Plus Edition at https://xceed.com/xceed-toolkit-plus-for-wpf/
|
|
|
|
Stay informed: follow @datagrid on Twitter or Like http://facebook.com/datagrids
|
|
|
|
*************************************************************************************-->
|
|
<local:DemoView x:Class="Xceed.Wpf.Toolkit.LiveExplorer.Samples.Theming.Views.ThemingAvalonDockView"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:xcad="http://schemas.xceed.com/wpf/xaml/avalondock"
|
|
xmlns:xctk="http://schemas.xceed.com/wpf/xaml/toolkit"
|
|
xmlns:s="clr-namespace:System;assembly=mscorlib"
|
|
xmlns:view="clr-namespace:Xceed.Wpf.Toolkit.LiveExplorer.Samples.Theming.Views"
|
|
xmlns:local="clr-namespace:Xceed.Wpf.Toolkit.LiveExplorer"
|
|
Title="Theming AvalonDock"
|
|
x:Name="_demo">
|
|
<local:DemoView.Description>
|
|
<Paragraph FontSize="14"
|
|
FontFamily="Segoe">
|
|
<Run>Changes the themes of the AvalonDock controls. Available themes are System, Aero, VS2010, Metro, Office2007, Windows10 and Metro with accent color. The Xceed.Wpf.AvalonDock.Themes.xxx.dll assemblies are necessary to use these themes.</Run>
|
|
<LineBreak />
|
|
<Run>Some features of this sample are only available in the "Plus" version.</Run>
|
|
<LineBreak />
|
|
<Hyperlink NavigateUri="https://xceed.com/xceed-toolkit-plus-for-wpf" RequestNavigate="Hyperlink_RequestNavigate">
|
|
Click here for more details about Xceed Toolkit Plus for WPF.
|
|
</Hyperlink>
|
|
</Paragraph>
|
|
</local:DemoView.Description>
|
|
|
|
<local:DemoView.Resources>
|
|
<ResourceDictionary>
|
|
<ResourceDictionary.MergedDictionaries>
|
|
<ResourceDictionary Source="../ItemTemplates/Common.xaml" />
|
|
</ResourceDictionary.MergedDictionaries>
|
|
|
|
|
|
|
|
<Style x:Key="plusSuffix" TargetType="TextBlock">
|
|
<Setter Property="Margin" Value="5,0,0,0"/>
|
|
<Setter Property="Text" Value="Plus Only"/>
|
|
<Setter Property="FontStyle" Value="Italic"/>
|
|
<Setter Property="FontSize" Value="8"/>
|
|
<Setter Property="BaselineOffset" Value="7"/>
|
|
<Setter Property="Foreground" Value="#06b025"/>
|
|
<Style.Triggers>
|
|
<DataTrigger Binding="{Binding IsHighlighted, RelativeSource={RelativeSource AncestorType={x:Type ComboBoxItem}}}" Value="True">
|
|
<Setter Property="Foreground" Value="White"/>
|
|
</DataTrigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
|
|
<Style x:Key="plusItem"
|
|
TargetType="ComboBoxItem">
|
|
<Setter Property="HorizontalContentAlignment"
|
|
Value="Stretch" />
|
|
<Setter Property="ContentTemplate">
|
|
<Setter.Value>
|
|
<DataTemplate>
|
|
<DockPanel>
|
|
<TextBlock DockPanel.Dock="Left"
|
|
Text="{Binding}" />
|
|
<TextBlock TextAlignment="Right" Style="{StaticResource plusSuffix}" />
|
|
</DockPanel>
|
|
</DataTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="plusNewItem"
|
|
TargetType="ComboBoxItem">
|
|
<Setter Property="HorizontalContentAlignment"
|
|
Value="Stretch" />
|
|
<Setter Property="ContentTemplate">
|
|
<Setter.Value>
|
|
<DataTemplate>
|
|
<DockPanel>
|
|
<TextBlock DockPanel.Dock="Left"
|
|
Text="{Binding}" />
|
|
<TextBlock TextAlignment="Right"
|
|
Style="{StaticResource newSuffix}" />
|
|
<TextBlock TextAlignment="Right" Style="{StaticResource plusSuffix}" />
|
|
</DockPanel>
|
|
</DataTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
</ResourceDictionary>
|
|
</local:DemoView.Resources>
|
|
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<GroupBox Header="Features"
|
|
Grid.Row="0"
|
|
Margin="5">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<StackPanel Orientation="Horizontal"
|
|
Margin="5">
|
|
<TextBlock Text="Theme:"
|
|
Margin="0,0,10,0"
|
|
VerticalAlignment="Center" />
|
|
<ComboBox x:Name="_themeCombo"
|
|
SelectedIndex="0"
|
|
Width="160"
|
|
Height="25">
|
|
<view:AvalonDockComboBoxItem Content="Generic"
|
|
Selected="DefaultComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.Generic}"/>
|
|
<view:AvalonDockComboBoxItem Content="Aero"
|
|
Selected="DefaultComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.Aero}">
|
|
<view:AvalonDockComboBoxItem.Tag>
|
|
<xcad:AeroTheme />
|
|
</view:AvalonDockComboBoxItem.Tag>
|
|
</view:AvalonDockComboBoxItem>
|
|
<view:AvalonDockComboBoxItem Content="VS2010"
|
|
Selected="DefaultComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.VS2010}">
|
|
<view:AvalonDockComboBoxItem.Tag>
|
|
<xcad:VS2010Theme />
|
|
</view:AvalonDockComboBoxItem.Tag>
|
|
</view:AvalonDockComboBoxItem>
|
|
<view:AvalonDockComboBoxItem Content="Metro"
|
|
Selected="DefaultComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.Metro}">
|
|
<view:AvalonDockComboBoxItem.Tag>
|
|
<xcad:MetroTheme />
|
|
</view:AvalonDockComboBoxItem.Tag>
|
|
</view:AvalonDockComboBoxItem>
|
|
<view:AvalonDockComboBoxItem Style="{StaticResource plusItem}"
|
|
Content="Office2007 Black"
|
|
Selected="DefaultComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.Office2007Black}">
|
|
</view:AvalonDockComboBoxItem>
|
|
<view:AvalonDockComboBoxItem Style="{StaticResource plusItem}"
|
|
Content="Office2007 Blue"
|
|
Selected="DefaultComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.Office2007Blue}">
|
|
</view:AvalonDockComboBoxItem>
|
|
<view:AvalonDockComboBoxItem Style="{StaticResource plusItem}"
|
|
Content="Office2007 Silver"
|
|
Selected="DefaultComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.Office2007Silver}">
|
|
</view:AvalonDockComboBoxItem>
|
|
<view:AvalonDockComboBoxItem Style="{StaticResource plusItem}"
|
|
Content="Windows 10"
|
|
Selected="DefaultComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.Windows10}">
|
|
</view:AvalonDockComboBoxItem>
|
|
<view:AvalonDockComboBoxItem x:Name="metroDarkComboBoxItem"
|
|
Style="{StaticResource plusItem}"
|
|
Content="Metro Dark"
|
|
Selected="MetroComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.MetroDark}">
|
|
<!--MetroDark Theme is set in CodeBehind-->
|
|
</view:AvalonDockComboBoxItem>
|
|
<view:AvalonDockComboBoxItem x:Name="metroLightComboBoxItem"
|
|
Style="{StaticResource plusItem}"
|
|
Content="Metro Light"
|
|
Selected="MetroComboBoxItem_Selected"
|
|
ThemeEnum="{x:Static view:AvalonDockThemesEnum.MetroLight}">
|
|
<!--MetroLight Theme is set in CodeBehind-->
|
|
</view:AvalonDockComboBoxItem>
|
|
</ComboBox>
|
|
</StackPanel>
|
|
|
|
|
|
</Grid>
|
|
</GroupBox>
|
|
|
|
<TextBlock Grid.Row="1"
|
|
Text="Usage:"
|
|
Style="{StaticResource Header}" />
|
|
|
|
<Border x:Name="SampleBorder"
|
|
Grid.Row="2">
|
|
<xcad:DockingManager x:Name="_dockingManager"
|
|
MaxHeight="395"
|
|
AllowMixedOrientation="True"
|
|
BorderBrush="Black"
|
|
BorderThickness="1"
|
|
Theme="{Binding ElementName=_themeCombo, Path=SelectedItem.Tag}">
|
|
<xcad:DockingManager.DocumentHeaderTemplate>
|
|
<DataTemplate>
|
|
<StackPanel Orientation="Horizontal">
|
|
<Image Source="{Binding IconSource}"
|
|
Margin="0,0,4,0" />
|
|
<TextBlock Text="{Binding Title}" />
|
|
</StackPanel>
|
|
</DataTemplate>
|
|
</xcad:DockingManager.DocumentHeaderTemplate>
|
|
<xcad:LayoutRoot x:Name="_layoutRoot">
|
|
<xcad:LayoutPanel Orientation="Horizontal">
|
|
<xcad:LayoutAnchorablePane DockWidth="200">
|
|
<xcad:LayoutAnchorable ContentId="properties"
|
|
Title="Properties"
|
|
CanHide="False"
|
|
CanClose="False"
|
|
AutoHideWidth="240"
|
|
IconSource="../Images/property-blue.png">
|
|
<xctk:PropertyGrid NameColumnWidth="110"
|
|
SelectedObject="{Binding ElementName=_layoutRoot, Path=LastFocusedDocument.Content}"
|
|
AutoGenerateProperties="False">
|
|
<xctk:PropertyGrid.PropertyDefinitions>
|
|
<xctk:PropertyDefinition TargetProperties="Background" />
|
|
<xctk:PropertyDefinition TargetProperties="BorderBrush" />
|
|
<xctk:PropertyDefinition TargetProperties="BorderThickness" />
|
|
<xctk:PropertyDefinition TargetProperties="FontSize" />
|
|
<xctk:PropertyDefinition TargetProperties="FontStyle" />
|
|
<xctk:PropertyDefinition TargetProperties="Width" />
|
|
<xctk:PropertyDefinition TargetProperties="Height" />
|
|
</xctk:PropertyGrid.PropertyDefinitions>
|
|
</xctk:PropertyGrid>
|
|
</xcad:LayoutAnchorable>
|
|
</xcad:LayoutAnchorablePane>
|
|
<xcad:LayoutDocumentPaneGroup>
|
|
<xcad:LayoutDocumentPane>
|
|
<xcad:LayoutDocument ContentId="document1"
|
|
Title="Document 1"
|
|
IconSource="../Images/document.png">
|
|
<Button Content="Document 1 Content"
|
|
HorizontalAlignment="Center"
|
|
VerticalAlignment="Center" />
|
|
</xcad:LayoutDocument>
|
|
<xcad:LayoutDocument ContentId="document2"
|
|
Title="Document 2"
|
|
IconSource="../Images/document.png">
|
|
<TextBox Text="Document 2 Content"
|
|
AcceptsReturn="True" />
|
|
</xcad:LayoutDocument>
|
|
</xcad:LayoutDocumentPane>
|
|
</xcad:LayoutDocumentPaneGroup >
|
|
<xcad:LayoutAnchorablePaneGroup DockWidth="125">
|
|
<xcad:LayoutAnchorablePane>
|
|
<xcad:LayoutAnchorable ContentId="alarms"
|
|
Title="Alarms"
|
|
IconSource="../Images/alarm-clock-blue.png">
|
|
<ListBox>
|
|
<s:String>Alarm 1</s:String>
|
|
<s:String>Alarm 2</s:String>
|
|
<s:String>Alarm 3</s:String>
|
|
</ListBox>
|
|
</xcad:LayoutAnchorable>
|
|
<xcad:LayoutAnchorable ContentId="journal"
|
|
Title="Journal">
|
|
<RichTextBox>
|
|
<FlowDocument>
|
|
<Paragraph FontSize="14"
|
|
FontFamily="Segoe">
|
|
This is the content of the Journal Pane.
|
|
<LineBreak />
|
|
A
|
|
<Bold>RichTextBox</Bold> has been added here
|
|
</Paragraph>
|
|
</FlowDocument>
|
|
</RichTextBox>
|
|
</xcad:LayoutAnchorable>
|
|
</xcad:LayoutAnchorablePane>
|
|
</xcad:LayoutAnchorablePaneGroup>
|
|
</xcad:LayoutPanel>
|
|
|
|
<xcad:LayoutRoot.LeftSide>
|
|
<xcad:LayoutAnchorSide>
|
|
<xcad:LayoutAnchorGroup>
|
|
<xcad:LayoutAnchorable Title="Agenda"
|
|
ContentId="agenda"
|
|
IconSource="../Images/address-book-open.png">
|
|
<TextBlock Text="Agenda Content"
|
|
Margin="10"
|
|
FontSize="18"
|
|
FontWeight="Black"
|
|
TextWrapping="Wrap" />
|
|
</xcad:LayoutAnchorable>
|
|
<xcad:LayoutAnchorable Title="Contacts"
|
|
ContentId="contacts"
|
|
IconSource="../Images/address-book--pencil.png">
|
|
<TextBlock Text="Contacts Content"
|
|
Margin="10"
|
|
FontSize="18"
|
|
FontWeight="Black"
|
|
TextWrapping="Wrap" />
|
|
</xcad:LayoutAnchorable>
|
|
</xcad:LayoutAnchorGroup>
|
|
</xcad:LayoutAnchorSide>
|
|
</xcad:LayoutRoot.LeftSide>
|
|
</xcad:LayoutRoot>
|
|
</xcad:DockingManager>
|
|
</Border>
|
|
|
|
<Image x:Name="_openSourceScreenShot" Grid.Row="2" Height="395" Visibility="Collapsed" />
|
|
<StackPanel x:Name="_openSourceTextHyperlink" Grid.Row="3" Orientation="Horizontal" Visibility="Collapsed">
|
|
<TextBlock Text="This theme is only available in the "Plus" version. "/>
|
|
<TextBlock>
|
|
<Hyperlink NavigateUri="https://xceed.com/xceed-toolkit-plus-for-wpf" RequestNavigate="Hyperlink_RequestNavigate">
|
|
Click here for more details about Xceed Toolkit Plus for WPF.
|
|
</Hyperlink>
|
|
</TextBlock>
|
|
</StackPanel>
|
|
</Grid>
|
|
</local:DemoView>
|
|
|