自动干扰策略原型完成1/3

This commit is contained in:
zengwenjie
2025-12-23 21:44:23 +08:00
parent f9420e68d0
commit 84df240cd6
10 changed files with 1702 additions and 1 deletions

View File

@@ -149,6 +149,14 @@
<!--禁用按钮文本-->
<SolidColorBrush x:Key="ButFGDisable" Color="#FFD8D8D8"/>
<!--#endregion-->
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Themes\Styles.xaml"/>
<ResourceDictionary Source="Themes\DGStyle.xaml"/>
<ResourceDictionary Source="Themes\SVStyle.xaml"/>
<ResourceDictionary Source="Themes\CBStyle.xaml"/>
<ResourceDictionary Source="Themes\DPStyle.xaml"/>
<!--<ResourceDictionary Source="Themes\EntityRemarks.xaml"/>-->
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>

View File

@@ -0,0 +1,253 @@
<Window x:Class="Deedy.Testing.JammerWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Deedy.Testing"
xmlns:deedy="clr-namespace:Deedy;assembly=Deedy.Wpf" d:WindowStyle="None"
mc:Ignorable="d"
Icon="/Icons/Icon.png" WindowStartupLocation="CenterScreen"
Title="「M219型自动化干扰机」 演训指控系统" MinWidth="1600" Height="900" Foreground="{DynamicResource FGTitle}"
DataContext="{Binding RelativeSource={RelativeSource Mode=Self}}">
<Window.Resources>
<Style TargetType="{x:Type RadioButton}">
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="FontSize" Value="16"/>
<Setter Property="BorderBrush" Value="White"/>
<Setter Property="BorderThickness" Value="0,0,0,1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RadioButton}">
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="FontSize" Value="18"/>
<Setter Property="Foreground" Value="Orange"/>
<Setter Property="BorderBrush" Value="Orange"/>
<Setter Property="BorderThickness" Value="0,0,0,4"/>
<Setter Property="Background" Value="{DynamicResource BGMenu}"/>
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
<deedy:WindowBorder Headground="{DynamicResource BGTitle}" ButtonBase.Click="WindowBorder_ButtonClick" MenuItem.Click="WindowBorder_MenuItemClick">
<deedy:WindowBorder.Header>
<DockPanel>
<Button DockPanel.Dock="Right" Content="链接干扰机"/>
<TextBox Margin="10,0,10,0" DockPanel.Dock="Right" Width="100" Tag="55555【默认】"/>
<TextBlock DockPanel.Dock="Right" Text="通信端口" VerticalAlignment="Center" Foreground="Silver"/>
<TextBox Margin="10,0,10,0" DockPanel.Dock="Right" Width="240" Tag="192.168.8.126【默认地址】"/>
<TextBlock DockPanel.Dock="Right" Text="通信地址" VerticalAlignment="Center" Foreground="Silver"/>
<UniformGrid Rows="1" HorizontalAlignment="Center">
<RadioButton x:Name="TabYXTC" Content="žžž演训调测模式" IsChecked="{Binding IsYXTC}" MinWidth="200" d:IsChecked="True"/>
<RadioButton x:Name="TabLKZZ" Content="žž联控作战模式" IsChecked="{Binding IsLKZZ}"/>
</UniformGrid>
</DockPanel>
</deedy:WindowBorder.Header>
<DockPanel Background="{DynamicResource BGNormal}">
<DockPanel DockPanel.Dock="Right" MinWidth="640">
<Border Height="40" DockPanel.Dock="Top" Background="{DynamicResource BGHeader}" BorderBrush="{DynamicResource FGHighlight}" BorderThickness="3,0,0,0">
<DockPanel>
<StackPanel DockPanel.Dock="Right" Orientation="Horizontal">
<TextBlock Padding="12,0,0,0" VerticalAlignment="Center" Foreground="{DynamicResource FGLable}" Text="工作模式"/>
<CheckBox Margin="12,0,12,0" Width="160" Style="{DynamicResource CheckBox_Switch}" Content="自动调度" Tag="手动控制"/>
</StackPanel>
<Border Width="40">
<Image Margin="6" Source="/Icons/Icon.png"/>
</Border>
<UniformGrid Rows="1" HorizontalAlignment="Left" Width="320">
<RadioButton Style="{DynamicResource RadioButton_TabHeader}" Content="实时状态" IsChecked="True" Padding="12,0,12,0"/>
<RadioButton Style="{DynamicResource RadioButton_TabHeader}" Content="运行日志" Padding="12,0,12,0"/>
</UniformGrid>
</DockPanel>
</Border>
<Border BorderBrush="{DynamicResource BBSeparator}" BorderThickness="1,0,0,0">
<Grid>
</Grid>
</Border>
</DockPanel>
<Grid>
<Grid d:Visibility="Hidden" Visibility="{Binding IsYXTC,Converter={StaticResource bool2VisibilityConverter}}">
</Grid>
<Grid d:Visibility="Visible" Visibility="{Binding IsLKZZ,Converter={StaticResource bool2VisibilityConverter}}">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<DockPanel>
<Border DockPanel.Dock="Top" BorderBrush="{DynamicResource BBSeparator}" BorderThickness="1,0,0,0">
<DockPanel>
<HeaderedContentControl DockPanel.Dock="Top" Height="40" Background="{DynamicResource BGEvenRow}" Style="{DynamicResource HCC_PropertyEditor}">
<HeaderedContentControl.Header>
<TextBlock Text="作战对象选择"/>
</HeaderedContentControl.Header>
<ComboBox Text="机载多功能相控阵雷达" SelectedIndex="1" IsReadOnly="True">
<ComboBoxItem Content="防空雷达"/>
<ComboBoxItem Content="机载多功能相控阵雷达"/>
<ComboBoxItem Content="雷达导引头"/>
<ComboBoxItem Content="无线电引信"/>
</ComboBox>
</HeaderedContentControl>
<HeaderedContentControl DockPanel.Dock="Top" Height="40" Background="{DynamicResource BGOddRow}" Header="作战意图选择" Style="{DynamicResource HCC_PropertyEditor}">
<UniformGrid Rows="1">
<RadioButton Content="不限意图" Style="{DynamicResource RadioButton_Item}" IsChecked="True"/>
<RadioButton Content="自卫突防" Style="{DynamicResource RadioButton_Item}"/>
<RadioButton Content="支援干扰" Style="{DynamicResource RadioButton_Item}"/>
<RadioButton Content="伴随干扰" Style="{DynamicResource RadioButton_Item}"/>
</UniformGrid>
</HeaderedContentControl>
<HeaderedContentControl DockPanel.Dock="Top" MinHeight="40" Background="{DynamicResource BGEvenRow}" Style="{DynamicResource HCC_PropertyEditor}">
<HeaderedContentControl.Header>
<Border Height="192">
<Border Height="40" VerticalAlignment="Top">
<TextBlock Text="作战效果选择" VerticalAlignment="Center"/>
</Border>
</Border>
</HeaderedContentControl.Header>
<StackPanel VerticalAlignment="Top">
<DockPanel Height="40">
<Button Content="选择所有" DockPanel.Dock="Right"/>
<Button Content="取消选择" DockPanel.Dock="Right"/>
<TextBlock Text="可以多选" VerticalAlignment="Center" Foreground="{DynamicResource FGKeynote}"/>
</DockPanel>
<Border BorderBrush="{DynamicResource BBSeparator}" BorderThickness="0,1,0,0">
<DockPanel Height="40">
<TextBlock Text="压制" FontSize="14" VerticalAlignment="Center" Width="80"/>
<WrapPanel Margin="4">
<CheckBox Margin="4" Content="降低雷达的探测距离" IsChecked="True"/>
<CheckBox Margin="4" Content="使雷达不能发现目标"/>
</WrapPanel>
</DockPanel>
</Border>
<Border BorderBrush="{DynamicResource BBSeparator}" BorderThickness="0,1,0,0">
<DockPanel Height="72">
<TextBlock Text="欺骗" FontSize="14" VerticalAlignment="Center" Width="80"/>
<WrapPanel Margin="4">
<CheckBox Margin="4" Content="使雷达发现多个假目标"/>
<CheckBox Margin="4" Content="饱和雷达数据处理能力" IsChecked="True"/>
<CheckBox Margin="4" Content="起到【隐真示假】作用"/>
</WrapPanel>
</DockPanel>
</Border>
<Border BorderBrush="{DynamicResource BBSeparator}" BorderThickness="0,1,0,0">
<DockPanel Height="40">
<TextBlock Text="拖引" FontSize="14" VerticalAlignment="Center" Width="80"/>
<WrapPanel Margin="4">
<CheckBox Margin="4" Content="使雷达无法稳定跟踪真实目标" IsChecked="True"/>
</WrapPanel>
</DockPanel>
</Border>
</StackPanel>
</HeaderedContentControl>
</DockPanel>
</Border>
<Border Background="{DynamicResource BGHeader}" DockPanel.Dock="Top" Height="40"
BorderBrush="{DynamicResource FGHighlight}" BorderThickness="3,0,0,0">
<DockPanel>
<Button DockPanel.Dock="Right" Content="筛选干扰策略"/>
<Border Margin="8,4,8,4" CornerRadius="16" BorderThickness="1" BorderBrush="{DynamicResource BBSeparator}">
<TextBox Margin="12,0,12,0"/>
</Border>
</DockPanel>
</Border>
<ItemsControl>
</ItemsControl>
</DockPanel>
<DockPanel Grid.Column="1">
<Border Background="{DynamicResource BGHeader}" DockPanel.Dock="Top" Height="40"
BorderBrush="{DynamicResource FGHighlight}" BorderThickness="3,0,0,0">
<DockPanel>
<Grid DockPanel.Dock="Right">
<Button Content="下发并运行干扰策略"
Visibility="{Binding IsChecked, Converter={StaticResource bool2VisibilityConverter}, ElementName=rbBDCL}"/>
<Button Content="同步干扰策略到本机"
Visibility="{Binding IsChecked, Converter={StaticResource bool2VisibilityConverter}, ElementName=rbZXCL}"/>
</Grid>
<UniformGrid Width="320" Rows="1" HorizontalAlignment="Left">
<RadioButton x:Name="rbBDCL" Style="{DynamicResource RadioButton_TabHeader}" IsChecked="True" Content="本地干扰策略"/>
<RadioButton x:Name="rbZXCL" Style="{DynamicResource RadioButton_TabHeader}" Content="干扰机现行策略"/>
</UniformGrid>
</DockPanel>
</Border>
<Border BorderBrush="{DynamicResource BBSeparator}" BorderThickness="1,0,0,0">
<DockPanel>
<Border DockPanel.Dock="Top" Background="{DynamicResource BGEvenRow}" Height="40" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,1">
<DockPanel>
<Button Content="选择所有" DockPanel.Dock="Right"/>
<Button Content="取消选择" DockPanel.Dock="Right"/>
<Border DockPanel.Dock="Left" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,2">
<TextBlock Margin="12,0,12,0" VerticalAlignment="Center" Text="辅助功能选项" HorizontalAlignment="Center" Foreground="{DynamicResource FGKeynote}"/>
</Border>
<TextBlock/>
</DockPanel>
</Border>
<Border DockPanel.Dock="Top" MinHeight="40" Background="{DynamicResource BGOddRow}">
<StackPanel DockPanel.Dock="Top" Margin="12,0,12,0">
<Border Height="40" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,0.5">
<DockPanel>
<TextBlock Text="存储功能" VerticalAlignment="Center" Width="80"/>
<UniformGrid Rows="1" Margin="4">
<CheckBox Margin="4" Content="辐射信号" IsChecked="True"/>
<CheckBox Margin="4" Content="侦察结果"/>
<CheckBox Margin="4" Content="设备状态" IsChecked="True"/>
</UniformGrid>
</DockPanel>
</Border>
<Border Height="40" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,0.5">
<DockPanel>
<TextBlock Text="恒增益/恒功率" VerticalAlignment="Center" Width="80"/>
<UniformGrid Rows="1">
</UniformGrid>
</DockPanel>
</Border>
<Border Height="40" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,0.5">
<DockPanel>
<TextBlock Text="组网协同" VerticalAlignment="Center" Width="80"/>
<UniformGrid Rows="1">
</UniformGrid>
</DockPanel>
</Border>
<Border Margin="0,0,0,4" Height="72" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,0.5">
<DockPanel>
<TextBlock Text="选通 | 抑制" VerticalAlignment="Center" Width="80"/>
<UniformGrid Rows="1">
</UniformGrid>
</DockPanel>
</Border>
</StackPanel>
</Border>
<Border DockPanel.Dock="Top" Background="{DynamicResource BGEvenRow}" Height="40" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,1">
<DockPanel>
<Button Content="选择所有" DockPanel.Dock="Right"/>
<Button Content="取消选择" DockPanel.Dock="Right"/>
<Border DockPanel.Dock="Left" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,2">
<TextBlock Margin="12,0,12,0" VerticalAlignment="Center" Text="干扰策略内容" HorizontalAlignment="Center" Foreground="{DynamicResource FGKeynote}"/>
</Border>
<TextBlock/>
</DockPanel>
</Border>
<ItemsControl Background="{DynamicResource BGOddRow}">
</ItemsControl>
</DockPanel>
</Border>
</DockPanel>
</Grid>
</Grid>
</DockPanel>
</deedy:WindowBorder>
</Window>

View File

@@ -0,0 +1,68 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace Deedy.Testing
{
/// <summary>
/// JammerWindow.xaml 的交互逻辑
/// </summary>
public partial class JammerWindow : Window
{
public JammerWindow()
{
InitializeComponent();
}
public bool IsYXTC
{
get { return (bool)GetValue(IsYXTCProperty); }
set { SetValue(IsYXTCProperty, value); }
}
// Using a DependencyProperty as the backing store for IsYXTC. This enables animation, styling, binding, etc...
public static readonly DependencyProperty IsYXTCProperty =
DependencyProperty.Register("IsYXTC", typeof(bool), typeof(JammerWindow), new PropertyMetadata(true));
public bool IsLKZZ
{
get { return (bool)GetValue(IsLKZZProperty); }
set { SetValue(IsLKZZProperty, value); }
}
// Using a DependencyProperty as the backing store for IsLKZZ. This enables animation, styling, binding, etc...
public static readonly DependencyProperty IsLKZZProperty =
DependencyProperty.Register("IsLKZZ", typeof(bool), typeof(JammerWindow), new PropertyMetadata(false));
private void WindowBorder_ButtonClick(object sender, RoutedEventArgs e)
{
}
private void WindowBorder_MenuItemClick(object sender, RoutedEventArgs e)
{
}
private void ComboBox_Click(object sender, RoutedEventArgs e)
{
e.Handled = true;
}
}
}

View File

@@ -10,7 +10,7 @@
<Border Height="40" DockPanel.Dock="Top" >
<local:ExMarkup.WindowChrome>
<local:WindowDecorator Background="{DynamicResource BGTitle}" Foreground="{DynamicResource FGTitle}" FontSize="20" HoverBrush="{DynamicResource FGKeynote}">
<Button Content="自动化干扰机" Click="Button_JammerView"/>
</local:WindowDecorator>
</local:ExMarkup.WindowChrome>
</Border>

View File

@@ -47,5 +47,10 @@ namespace Deedy
{
new WindowBorderTest().ShowDialog();
}
private void Button_JammerView(object sender, RoutedEventArgs e)
{
new JammerWindow() { WindowState = WindowState.Maximized }.ShowDialog();
}
}
}

View File

@@ -0,0 +1,78 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style x:Key="ComboBoxToggleButton" TargetType="ToggleButton">
<Setter Property="Background" Value="#01FFFFFF"/>
<Setter Property="Foreground" Value="#FFFF8888"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ToggleButton">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="0,0,0,0">
<Path x:Name="Arrow"
Fill="{TemplateBinding Foreground}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Data="M0,0 L4,4 8,0 Z"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="ComboBox">
<Setter Property="Background" Value="#3A3A3A"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="BorderBrush" Value="#5A5A5A"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Height" Value="30"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ComboBox">
<Grid>
<ToggleButton x:Name="ToggleButton" HorizontalAlignment="Right"
Style="{StaticResource ComboBoxToggleButton}"
Foreground="{TemplateBinding Foreground}"
Grid.Column="2"
Focusable="false"
IsChecked="{Binding IsDropDownOpen, RelativeSource={RelativeSource TemplatedParent}}"
ClickMode="Press"/>
<ContentPresenter x:Name="ContentSite"
Content="{TemplateBinding SelectedItem}"
ContentTemplate="{TemplateBinding ItemTemplate}"
ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}"
Margin="5,0,0,0"
VerticalAlignment="Center"
HorizontalAlignment="Left"/>
<TextBox x:Name="PART_EditableTextBox"
HorizontalAlignment="Left"
VerticalAlignment="Center"
Margin="3,0,23,0"
Focusable="True"
Background="Transparent"
Visibility="Hidden"
IsReadOnly="{TemplateBinding IsReadOnly}"/>
<Popup x:Name="Popup"
Placement="Bottom"
IsOpen="{TemplateBinding IsDropDownOpen}"
AllowsTransparency="True"
Focusable="False"
PopupAnimation="Slide">
<Grid x:Name="DropDown"
SnapsToDevicePixels="True"
MinWidth="{TemplateBinding ActualWidth}"
MaxHeight="{TemplateBinding MaxDropDownHeight}">
<Border x:Name="DropDownBorder"
Background="{TemplateBinding Background}"
BorderThickness="1"
BorderBrush="{TemplateBinding BorderBrush}"/>
<ScrollViewer SnapsToDevicePixels="True">
<ItemsPresenter KeyboardNavigation.DirectionalNavigation="Contained"/>
</ScrollViewer>
</Grid>
</Popup>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>

View File

@@ -0,0 +1,261 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:theme="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero2">
<Style x:Key="DGStyle_RowStyle" TargetType="{x:Type DataGridRow}">
<!--<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"/>-->
<Setter Property="BorderBrush" Value="{DynamicResource BBSeparator}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Foreground" Value="{DynamicResource FGContent}"/>
<!--<Setter Property="MinHeight" Value="40"/>-->
<Setter Property="SnapsToDevicePixels" Value="true"/>
<Setter Property="Validation.ErrorTemplate" Value="{x:Null}"/>
<Setter Property="ValidationErrorTemplate">
<Setter.Value>
<ControlTemplate>
<TextBlock Foreground="Red" Margin="2,0,0,0" Text="!" VerticalAlignment="Center"/>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridRow}">
<Border x:Name="DGR_Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" SnapsToDevicePixels="True">
<SelectiveScrollingGrid>
<SelectiveScrollingGrid.ColumnDefinitions>
<ColumnDefinition Width="Auto" MinWidth="6"/>
<ColumnDefinition Width="*"/>
</SelectiveScrollingGrid.ColumnDefinitions>
<SelectiveScrollingGrid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</SelectiveScrollingGrid.RowDefinitions>
<DataGridCellsPresenter Grid.Column="1" ItemsPanel="{TemplateBinding ItemsPanel}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
<DataGridDetailsPresenter Grid.Column="1" Grid.Row="1" SelectiveScrollingGrid.SelectiveScrollingOrientation="{Binding AreRowDetailsFrozen, ConverterParameter={x:Static SelectiveScrollingOrientation.Vertical}, Converter={x:Static DataGrid.RowDetailsScrollingConverter}, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" Visibility="{TemplateBinding DetailsVisibility}"/>
<DataGridRowHeader Grid.RowSpan="2" SelectiveScrollingGrid.SelectiveScrollingOrientation="Vertical" Visibility="{Binding HeadersVisibility, ConverterParameter={x:Static DataGridHeadersVisibility.Row}, Converter={x:Static DataGrid.HeadersVisibilityConverter}, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</SelectiveScrollingGrid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsNewItem" Value="True">
<Setter Property="Margin" Value="{Binding NewItemMargin, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</Trigger>
<Trigger Property="ItemsControl.AlternationIndex" Value="0">
<Setter Property="Background" Value="{DynamicResource BGEvenRow}"/>
</Trigger>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="{DynamicResource BGOddRow}"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource BGHover}"/>
</Trigger>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="{DynamicResource BGSelected}"/>
<Setter Property="Foreground" Value="{DynamicResource FGSelected}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="ColumnHeaderGripperStyle" TargetType="{x:Type Thumb}">
<Setter Property="Width" Value="8"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Cursor" Value="SizeWE"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Border Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="DGStyle_ColumnHeaderStyle" TargetType="{x:Type DataGridColumnHeader}">
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Background" Value="{DynamicResource BGHeader}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BGTitle}"/>
<Setter Property="BorderThickness" Value="0.5"/>
<!--<Setter Property="MinHeight" Value="40"/>-->
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridColumnHeader}">
<Grid Background="{DynamicResource BGHeader}">
<theme:DataGridHeaderBorder Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" IsPressed="{TemplateBinding IsPressed}" IsHovered="{TemplateBinding IsMouseOver}" IsClickable="{TemplateBinding CanUserSort}" Padding="{TemplateBinding Padding}" SortDirection="{TemplateBinding SortDirection}" SeparatorVisibility="{TemplateBinding SeparatorVisibility}" SeparatorBrush="{TemplateBinding SeparatorBrush}">
<ContentPresenter Margin="10,0,10,0" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</theme:DataGridHeaderBorder>
<Thumb x:Name="PART_LeftHeaderGripper" HorizontalAlignment="Left" Style="{StaticResource ColumnHeaderGripperStyle}"/>
<Thumb x:Name="PART_RightHeaderGripper" HorizontalAlignment="Right" Style="{StaticResource ColumnHeaderGripperStyle}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="RowHeaderGripperStyle" TargetType="{x:Type Thumb}">
<Setter Property="Height" Value="8"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Cursor" Value="SizeNS"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Border Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="DGStyle_RowHeaderStyle" TargetType="{x:Type DataGridRowHeader}">
<Style.Resources>
<BooleanToVisibilityConverter x:Key="bool2VisibilityConverter"/>
</Style.Resources>
<Setter Property="Background" Value="{DynamicResource BGTitle}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BBHighlight}"/>
<Setter Property="BorderThickness" Value="0,0,0,1"/>
<!--<Setter Property="MinWidth" Value="12"/>-->
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridRowHeader}">
<Grid>
<theme:DataGridHeaderBorder Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" IsPressed="{TemplateBinding IsPressed}" IsHovered="{TemplateBinding IsMouseOver}" IsSelected="{TemplateBinding IsRowSelected}" Orientation="Horizontal" Padding="{TemplateBinding Padding}" SeparatorVisibility="{TemplateBinding SeparatorVisibility}" SeparatorBrush="{TemplateBinding SeparatorBrush}">
<StackPanel Orientation="Horizontal">
<ContentPresenter RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="Center"/>
<Control SnapsToDevicePixels="false" Template="{Binding ValidationErrorTemplate, RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}}" Visibility="{Binding (Validation.HasError), Converter={StaticResource bool2VisibilityConverter}, RelativeSource={RelativeSource AncestorType={x:Type DataGridRow}}}"/>
</StackPanel>
</theme:DataGridHeaderBorder>
<Thumb x:Name="PART_TopHeaderGripper" Style="{StaticResource RowHeaderGripperStyle}" VerticalAlignment="Top"/>
<Thumb x:Name="PART_BottomHeaderGripper" Style="{StaticResource RowHeaderGripperStyle}" VerticalAlignment="Bottom"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<SolidColorBrush x:Key="{x:Static DataGrid.FocusBorderBrushKey}" Color="#FF000000"/>
<Style x:Key="DGStyle_DataGridCellStyle" TargetType="{x:Type DataGridCell}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderBrush" Value="{DynamicResource BBBorder}"/>
<Setter Property="BorderThickness" Value="0.25,0,0.25,0"/>
<Setter Property="MinHeight" Value="36"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridCell}">
<Border Background="{TemplateBinding Background}">
<Border Margin="0,8,0,8" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" SnapsToDevicePixels="True">
<ContentPresenter Margin="8,0,8,0" VerticalAlignment="Center" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<!--<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>-->
<Setter Property="Foreground" Value="{DynamicResource ButFGHighlight}"/>
</Trigger>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static DataGrid.FocusBorderBrushKey}}"/>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="true"/>
<Condition Property="Selector.IsSelectionActive" Value="false"/>
</MultiTrigger.Conditions>
<!--<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.InactiveSelectionHighlightBrushKey}}"/>
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static SystemColors.InactiveSelectionHighlightBrushKey}}"/>-->
<Setter Property="Foreground" Value="{DynamicResource FGKeynote}"/>
</MultiTrigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="{ComponentResourceKey ResourceId=DataGridSelectAllButtonStyle, TypeInTargetAssembly={x:Type DataGrid}}" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Grid>
<Rectangle x:Name="Border" Fill="{DynamicResource {x:Static SystemColors.ControlBrushKey}}" SnapsToDevicePixels="True"/>
<Polygon x:Name="Arrow" Fill="Black" HorizontalAlignment="Right" Margin="8,8,3,3" Opacity="0.15" Points="0,10 10,10 10,0" Stretch="Uniform" VerticalAlignment="Bottom"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Stroke" TargetName="Border" Value="{DynamicResource {x:Static SystemColors.ControlDarkBrushKey}}"/>
</Trigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Fill" TargetName="Border" Value="{DynamicResource {x:Static SystemColors.ControlDarkBrushKey}}"/>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Visibility" TargetName="Arrow" Value="Collapsed"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="{x:Type DataGrid}">
<Setter Property="BorderBrush" Value="{DynamicResource BBSeparator}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
<Setter Property="VerticalGridLinesBrush" Value="{DynamicResource BBSeparator}"/>
<Setter Property="HorizontalGridLinesBrush" Value="{DynamicResource BBSeparator}"/>
<Setter Property="GridLinesVisibility" Value="Horizontal"/>
<Setter Property="AlternationCount" Value="2"/>
<Setter Property="CanUserAddRows" Value="False"/>
<Setter Property="AutoGenerateColumns" Value="False"/>
<Setter Property="Foreground" Value="{DynamicResource FGTitle}"/>
<!--<Setter Property="RowDetailsVisibilityMode" Value="Visible"/>-->
<Setter Property="RowHeaderStyle" Value="{DynamicResource DGStyle_RowHeaderStyle}"/>
<Setter Property="ColumnHeaderStyle" Value="{DynamicResource DGStyle_ColumnHeaderStyle}"/>
<Setter Property="ColumnHeaderHeight" Value="40"/>
<Setter Property="RowStyle" Value="{DynamicResource DGStyle_RowStyle}"/>
<Setter Property="CellStyle" Value="{DynamicResource DGStyle_DataGridCellStyle}"/>
<Setter Property="SelectionMode" Value="Single"/>
<Setter Property="ScrollViewer.CanContentScroll" Value="true"/>
<Setter Property="ScrollViewer.PanningMode" Value="Both"/>
<Setter Property="Stylus.IsFlicksEnabled" Value="False"/>
<Setter Property="IsReadOnly" Value="True"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGrid}">
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="True">
<ScrollViewer x:Name="DG_ScrollViewer" Focusable="false">
<ScrollViewer.Template>
<ControlTemplate TargetType="{x:Type ScrollViewer}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Button Command="{x:Static DataGrid.SelectAllCommand}" Focusable="false" Style="{DynamicResource {ComponentResourceKey ResourceId=DataGridSelectAllButtonStyle, TypeInTargetAssembly={x:Type DataGrid}}}" Visibility="{Binding HeadersVisibility, ConverterParameter={x:Static DataGridHeadersVisibility.All}, Converter={x:Static DataGrid.HeadersVisibilityConverter}, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" Width="{Binding CellsPanelHorizontalOffset, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
<DataGridColumnHeadersPresenter x:Name="PART_ColumnHeadersPresenter" Grid.Column="1" Visibility="{Binding HeadersVisibility, ConverterParameter={x:Static DataGridHeadersVisibility.Column}, Converter={x:Static DataGrid.HeadersVisibilityConverter}, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" CanContentScroll="{TemplateBinding CanContentScroll}" Grid.ColumnSpan="2" Grid.Row="1"/>
<ScrollBar x:Name="PART_VerticalScrollBar" Grid.Column="2" Maximum="{TemplateBinding ScrollableHeight}" Orientation="Vertical" Grid.Row="1" Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource Mode=TemplatedParent}}" ViewportSize="{TemplateBinding ViewportHeight}" Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"/>
<Grid Grid.Column="1" Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="{Binding NonFrozenColumnsViewportHorizontalOffset, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<ScrollBar x:Name="PART_HorizontalScrollBar" Grid.Column="1" Maximum="{TemplateBinding ScrollableWidth}" Orientation="Horizontal" Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource Mode=TemplatedParent}}" ViewportSize="{TemplateBinding ViewportWidth}" Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"/>
</Grid>
</Grid>
</ControlTemplate>
</ScrollViewer.Template>
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsGrouping" Value="true"/>
<Condition Property="VirtualizingPanel.IsVirtualizingWhenGrouping" Value="false"/>
</MultiTrigger.Conditions>
<Setter Property="ScrollViewer.CanContentScroll" Value="false"/>
</MultiTrigger>
</Style.Triggers>
</Style>
</ResourceDictionary>

View File

@@ -0,0 +1,160 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style TargetType="{x:Type DatePicker}">
<Setter Property="Foreground" Value="#FF333333"/>
<Setter Property="IsTodayHighlighted" Value="True"/>
<Setter Property="SelectedDateFormat" Value="Short"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Padding" Value="2"/>
<Setter Property="BorderBrush">
<Setter.Value>
<LinearGradientBrush EndPoint=".5,0" StartPoint=".5,1">
<GradientStop Color="#FFA3AEB9" Offset="0"/>
<GradientStop Color="#FF8399A9" Offset="0.375"/>
<GradientStop Color="#FF718597" Offset="0.375"/>
<GradientStop Color="#FF617584" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DatePicker}">
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal"/>
<VisualState x:Name="Disabled">
<Storyboard>
<DoubleAnimation Duration="0" Storyboard.TargetName="PART_DisabledVisual" To="1" Storyboard.TargetProperty="Opacity"/>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Grid x:Name="PART_Root" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
<Grid.Resources>
<SolidColorBrush x:Key="DisabledBrush" Color="#A5FFFFFF"/>
<ControlTemplate x:Key="DropDownButtonTemplate" TargetType="{x:Type Button}">
<Grid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualStateGroup.Transitions>
<VisualTransition GeneratedDuration="0"/>
<VisualTransition GeneratedDuration="0:0:0.1" To="MouseOver"/>
<VisualTransition GeneratedDuration="0:0:0.1" To="Pressed"/>
</VisualStateGroup.Transitions>
<VisualState x:Name="Normal"/>
<VisualState x:Name="MouseOver">
<Storyboard>
<ColorAnimation Duration="0" Storyboard.TargetName="Background" To="#FF448DCA" Storyboard.TargetProperty="(Border.Background).(SolidColorBrush.Color)"/>
<ColorAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="BackgroundGradient" Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[3].(GradientStop.Color)">
<SplineColorKeyFrame KeyTime="0" Value="#7FFFFFFF"/>
</ColorAnimationUsingKeyFrames>
<ColorAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="BackgroundGradient" Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[2].(GradientStop.Color)">
<SplineColorKeyFrame KeyTime="0" Value="#CCFFFFFF"/>
</ColorAnimationUsingKeyFrames>
<ColorAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="BackgroundGradient" Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[1].(GradientStop.Color)">
<SplineColorKeyFrame KeyTime="0" Value="#F2FFFFFF"/>
</ColorAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ColorAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="Background" Storyboard.TargetProperty="(Border.Background).(SolidColorBrush.Color)">
<SplineColorKeyFrame KeyTime="0" Value="#FF448DCA"/>
</ColorAnimationUsingKeyFrames>
<DoubleAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="Highlight" Storyboard.TargetProperty="(UIElement.Opacity)">
<SplineDoubleKeyFrame KeyTime="0" Value="1"/>
</DoubleAnimationUsingKeyFrames>
<ColorAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="BackgroundGradient" Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[1].(GradientStop.Color)">
<SplineColorKeyFrame KeyTime="0" Value="#EAFFFFFF"/>
</ColorAnimationUsingKeyFrames>
<ColorAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="BackgroundGradient" Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[2].(GradientStop.Color)">
<SplineColorKeyFrame KeyTime="0" Value="#C6FFFFFF"/>
</ColorAnimationUsingKeyFrames>
<ColorAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="BackgroundGradient" Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[3].(GradientStop.Color)">
<SplineColorKeyFrame KeyTime="0" Value="#6BFFFFFF"/>
</ColorAnimationUsingKeyFrames>
<ColorAnimationUsingKeyFrames BeginTime="0" Duration="00:00:00.001" Storyboard.TargetName="BackgroundGradient" Storyboard.TargetProperty="(Border.Background).(GradientBrush.GradientStops)[0].(GradientStop.Color)">
<SplineColorKeyFrame KeyTime="0" Value="#F4FFFFFF"/>
</ColorAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled"/>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Grid Background="#11FFFFFF" FlowDirection="LeftToRight" HorizontalAlignment="Center" Height="18" Margin="0" VerticalAlignment="Center" Width="19">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="20*"/>
<ColumnDefinition Width="20*"/>
<ColumnDefinition Width="20*"/>
<ColumnDefinition Width="20*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="23*"/>
<RowDefinition Height="19*"/>
<RowDefinition Height="19*"/>
<RowDefinition Height="19*"/>
</Grid.RowDefinitions>
<Border x:Name="Highlight" BorderBrush="#FF45D6FA" BorderThickness="1" CornerRadius="0,0,1,1" Grid.ColumnSpan="4" Margin="-1" Opacity="0" Grid.RowSpan="4" Grid.Row="0"/>
<Border x:Name="Background" Background="#FF1F3B53" BorderBrush="#FFFFFFFF" BorderThickness="1" CornerRadius=".5" Grid.ColumnSpan="4" Margin="0,-1,0,0" Opacity="1" Grid.RowSpan="3" Grid.Row="1"/>
<Border x:Name="BackgroundGradient" BorderBrush="#BF000000" BorderThickness="1" CornerRadius=".5" Grid.ColumnSpan="4" Margin="0,-1,0,0" Opacity="1" Grid.RowSpan="3" Grid.Row="1">
<Border.Background>
<LinearGradientBrush EndPoint=".7,1" StartPoint=".7,0">
<GradientStop Color="#FFFFFFFF" Offset="0"/>
<GradientStop Color="#F9FFFFFF" Offset="0.375"/>
<GradientStop Color="#E5FFFFFF" Offset="0.625"/>
<GradientStop Color="#C6FFFFFF" Offset="1"/>
</LinearGradientBrush>
</Border.Background>
</Border>
<Rectangle Grid.ColumnSpan="4" Grid.RowSpan="1" StrokeThickness="1">
<Rectangle.Fill>
<LinearGradientBrush EndPoint="0.3,-1.1" StartPoint="0.46,1.6">
<GradientStop Color="#FF4084BD"/>
<GradientStop Color="#FFAFCFEA" Offset="1"/>
</LinearGradientBrush>
</Rectangle.Fill>
<Rectangle.Stroke>
<LinearGradientBrush EndPoint="0.48,-1" StartPoint="0.48,1.25">
<GradientStop Color="#FF494949"/>
<GradientStop Color="#FF9F9F9F" Offset="1"/>
</LinearGradientBrush>
</Rectangle.Stroke>
</Rectangle>
<Path Grid.Column="0" Grid.ColumnSpan="4" Data="M11.426758,8.4305077 L11.749023,8.4305077 L11.749023,16.331387 L10.674805,16.331387 L10.674805,10.299648 L9.0742188,11.298672 L9.0742188,10.294277 C9.4788408,10.090176 9.9094238,9.8090878 10.365967,9.4510155 C10.82251,9.0929432 11.176106,8.7527733 11.426758,8.4305077 z M14.65086,8.4305077 L18.566387,8.4305077 L18.566387,9.3435936 L15.671368,9.3435936 L15.671368,11.255703 C15.936341,11.058764 16.27293,10.960293 16.681133,10.960293 C17.411602,10.960293 17.969301,11.178717 18.354229,11.615566 C18.739157,12.052416 18.931622,12.673672 18.931622,13.479336 C18.931622,15.452317 18.052553,16.438808 16.294415,16.438808 C15.560365,16.438808 14.951641,16.234707 14.468243,15.826504 L14.881817,14.929531 C15.368796,15.326992 15.837872,15.525723 16.289043,15.525723 C17.298809,15.525723 17.803692,14.895514 17.803692,13.635098 C17.803692,12.460618 17.305971,11.873379 16.310528,11.873379 C15.83071,11.873379 15.399232,12.079271 15.016094,12.491055 L14.65086,12.238613 z" Fill="#FF2F2F2F" HorizontalAlignment="Center" Margin="4,3,4,3" RenderTransformOrigin="0.5,0.5" Grid.RowSpan="3" Grid.Row="1" Stretch="Fill" VerticalAlignment="Center"/>
<Ellipse Grid.ColumnSpan="4" Fill="#FFFFFFFF" HorizontalAlignment="Center" Height="3" StrokeThickness="0" VerticalAlignment="Center" Width="3"/>
<Border x:Name="DisabledVisual" BorderBrush="#B2FFFFFF" BorderThickness="1" CornerRadius="0,0,.5,.5" Grid.ColumnSpan="4" Opacity="0" Grid.RowSpan="4" Grid.Row="0"/>
</Grid>
</Grid>
</ControlTemplate>
</Grid.Resources>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button x:Name="PART_Button" Grid.Column="1" Foreground="{TemplateBinding Foreground}" Focusable="False" HorizontalAlignment="Left" Margin="3,0,3,0" Grid.Row="0" Template="{StaticResource DropDownButtonTemplate}" VerticalAlignment="Top" Width="20"/>
<DatePickerTextBox x:Name="PART_TextBox" Background="{TemplateBinding Background}" Grid.Column="0" Focusable="{TemplateBinding Focusable}" HorizontalContentAlignment="Stretch" Grid.Row="0" VerticalContentAlignment="Stretch"/>
<Grid x:Name="PART_DisabledVisual" Grid.Column="0" Grid.ColumnSpan="2" IsHitTestVisible="False" Opacity="0" Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Rectangle Grid.Column="0" Fill="#A5FFFFFF" Grid.Row="0" RadiusX="1" RadiusY="1"/>
<Rectangle Grid.Column="1" Fill="#A5FFFFFF" Height="18" Margin="3,0,3,0" Grid.Row="0" RadiusX="1" RadiusY="1" Width="19"/>
<Popup x:Name="PART_Popup" AllowsTransparency="True" Placement="Bottom" PlacementTarget="{Binding ElementName=PART_TextBox}" StaysOpen="False"/>
</Grid>
</Grid>
</Border>
<ControlTemplate.Triggers>
<DataTrigger Binding="{Binding Source={x:Static SystemParameters.HighContrast}}" Value="false">
<Setter Property="Foreground" TargetName="PART_TextBox" Value="{Binding Foreground, RelativeSource={RelativeSource Mode=TemplatedParent}}"/>
</DataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>

View File

@@ -0,0 +1,287 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style x:Key="FocusVisual">
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<Rectangle Margin="2" StrokeDashArray="1 2" Stroke="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" SnapsToDevicePixels="true" StrokeThickness="1"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<SolidColorBrush x:Key="ScrollBar.Static.Background" Color="#F0F0F0"/>
<SolidColorBrush x:Key="ScrollBar.Static.Border" Color="#F0F0F0"/>
<SolidColorBrush x:Key="ScrollBar.Static.Glyph" Color="#606060"/>
<SolidColorBrush x:Key="ScrollBar.Static.Thumb" Color="#CDCDCD"/>
<SolidColorBrush x:Key="ScrollBar.MouseOver.Background" Color="#DADADA"/>
<SolidColorBrush x:Key="ScrollBar.MouseOver.Border" Color="#DADADA"/>
<SolidColorBrush x:Key="ScrollBar.MouseOver.Glyph" Color="#000000"/>
<SolidColorBrush x:Key="ScrollBar.MouseOver.Thumb" Color="#A6A6A6"/>
<SolidColorBrush x:Key="ScrollBar.Pressed.Background" Color="#606060"/>
<SolidColorBrush x:Key="ScrollBar.Pressed.Border" Color="#606060"/>
<SolidColorBrush x:Key="ScrollBar.Pressed.Thumb" Color="#606060"/>
<SolidColorBrush x:Key="ScrollBar.Pressed.Glyph" Color="#FFFFFF"/>
<SolidColorBrush x:Key="ScrollBar.Disabled.Background" Color="#F0F0F0"/>
<SolidColorBrush x:Key="ScrollBar.Disabled.Border" Color="#F0F0F0"/>
<SolidColorBrush x:Key="ScrollBar.Disabled.Glyph" Color="#BFBFBF"/>
<Style x:Key="RepeatButtonTransparent" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ScrollBarButton" TargetType="{x:Type RepeatButton}">
<Setter Property="FocusVisualStyle" Value="{StaticResource FocusVisual}"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Padding" Value="1"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Border x:Name="border" Background="{StaticResource ScrollBar.Static.Background}" BorderBrush="{StaticResource ScrollBar.Static.Border}" BorderThickness="1" SnapsToDevicePixels="true">
<ContentPresenter x:Name="contentPresenter" Focusable="False" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Background" TargetName="border" Value="{StaticResource ScrollBar.MouseOver.Background}"/>
<Setter Property="BorderBrush" TargetName="border" Value="{StaticResource ScrollBar.MouseOver.Border}"/>
</Trigger>
<Trigger Property="IsPressed" Value="true">
<Setter Property="Background" TargetName="border" Value="{StaticResource ScrollBar.Pressed.Background}"/>
<Setter Property="BorderBrush" TargetName="border" Value="{StaticResource ScrollBar.Pressed.Border}"/>
</Trigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Opacity" TargetName="contentPresenter" Value="0.56"/>
<Setter Property="Background" TargetName="border" Value="{StaticResource ScrollBar.Disabled.Background}"/>
<Setter Property="BorderBrush" TargetName="border" Value="{StaticResource ScrollBar.Disabled.Border}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ScrollBarThumbVertical" TargetType="{x:Type Thumb}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Rectangle x:Name="rectangle" Fill="{StaticResource ScrollBar.Static.Thumb}" Height="{TemplateBinding Height}" SnapsToDevicePixels="True" Width="{TemplateBinding Width}"/>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ScrollBar.MouseOver.Thumb}"/>
</Trigger>
<Trigger Property="IsDragging" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ScrollBar.Pressed.Thumb}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ScrollBarThumbHorizontal" TargetType="{x:Type Thumb}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Rectangle x:Name="rectangle" Fill="{StaticResource ScrollBar.Static.Thumb}" Height="{TemplateBinding Height}" SnapsToDevicePixels="True" Width="{TemplateBinding Width}"/>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ScrollBar.MouseOver.Thumb}"/>
</Trigger>
<Trigger Property="IsDragging" Value="true">
<Setter Property="Fill" TargetName="rectangle" Value="{StaticResource ScrollBar.Pressed.Thumb}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="{x:Type ScrollBar}">
<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false"/>
<Setter Property="Stylus.IsFlicksEnabled" Value="false"/>
<Setter Property="Background" Value="{StaticResource ScrollBar.Static.Background}"/>
<Setter Property="BorderBrush" Value="{StaticResource ScrollBar.Static.Border}"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="BorderThickness" Value="1,0"/>
<Setter Property="Width" Value="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"/>
<Setter Property="MinWidth" Value="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" SnapsToDevicePixels="true">
<Grid.RowDefinitions>
<RowDefinition MaxHeight="{DynamicResource {x:Static SystemParameters.VerticalScrollBarButtonHeightKey}}"/>
<RowDefinition Height="0.00001*"/>
<RowDefinition MaxHeight="{DynamicResource {x:Static SystemParameters.VerticalScrollBarButtonHeightKey}}"/>
</Grid.RowDefinitions>
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Grid.Row="1"/>
<RepeatButton x:Name="PART_LineUpButton" Command="{x:Static ScrollBar.LineUpCommand}" IsEnabled="{TemplateBinding IsMouseOver}" Style="{StaticResource ScrollBarButton}">
<Path x:Name="ArrowTop" Data="M 0,4 C0,4 0,6 0,6 0,6 3.5,2.5 3.5,2.5 3.5,2.5 7,6 7,6 7,6 7,4 7,4 7,4 3.5,0.5 3.5,0.5 3.5,0.5 0,4 0,4 z" Fill="{StaticResource ScrollBar.Static.Glyph}" Margin="3,4,3,3" Stretch="Uniform"/>
</RepeatButton>
<Track x:Name="PART_Track" IsDirectionReversed="true" IsEnabled="{TemplateBinding IsMouseOver}" Grid.Row="1">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageUpCommand}" Style="{StaticResource RepeatButtonTransparent}"/>
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageDownCommand}" Style="{StaticResource RepeatButtonTransparent}"/>
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource ScrollBarThumbVertical}"/>
</Track.Thumb>
</Track>
<RepeatButton x:Name="PART_LineDownButton" Command="{x:Static ScrollBar.LineDownCommand}" IsEnabled="{TemplateBinding IsMouseOver}" Grid.Row="2" Style="{StaticResource ScrollBarButton}">
<Path x:Name="ArrowBottom" Data="M 0,2.5 C0,2.5 0,0.5 0,0.5 0,0.5 3.5,4 3.5,4 3.5,4 7,0.5 7,0.5 7,0.5 7,2.5 7,2.5 7,2.5 3.5,6 3.5,6 3.5,6 0,2.5 0,2.5 z" Fill="{StaticResource ScrollBar.Static.Glyph}" Margin="3,4,3,3" Stretch="Uniform"/>
</RepeatButton>
</Grid>
<ControlTemplate.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsMouseOver, ElementName=PART_LineDownButton}" Value="true"/>
<Condition Binding="{Binding IsPressed, ElementName=PART_LineDownButton}" Value="true"/>
</MultiDataTrigger.Conditions>
<Setter Property="Fill" TargetName="ArrowBottom" Value="{StaticResource ScrollBar.Pressed.Glyph}"/>
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsMouseOver, ElementName=PART_LineUpButton}" Value="true"/>
<Condition Binding="{Binding IsPressed, ElementName=PART_LineUpButton}" Value="true"/>
</MultiDataTrigger.Conditions>
<Setter Property="Fill" TargetName="ArrowTop" Value="{StaticResource ScrollBar.Pressed.Glyph}"/>
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsMouseOver, ElementName=PART_LineDownButton}" Value="true"/>
<Condition Binding="{Binding IsPressed, ElementName=PART_LineDownButton}" Value="false"/>
</MultiDataTrigger.Conditions>
<Setter Property="Fill" TargetName="ArrowBottom" Value="{StaticResource ScrollBar.MouseOver.Glyph}"/>
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsMouseOver, ElementName=PART_LineUpButton}" Value="true"/>
<Condition Binding="{Binding IsPressed, ElementName=PART_LineUpButton}" Value="false"/>
</MultiDataTrigger.Conditions>
<Setter Property="Fill" TargetName="ArrowTop" Value="{StaticResource ScrollBar.MouseOver.Glyph}"/>
</MultiDataTrigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Fill" TargetName="ArrowTop" Value="{StaticResource ScrollBar.Disabled.Glyph}"/>
<Setter Property="Fill" TargetName="ArrowBottom" Value="{StaticResource ScrollBar.Disabled.Glyph}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="Orientation" Value="Horizontal">
<Setter Property="Width" Value="Auto"/>
<Setter Property="MinWidth" Value="0"/>
<Setter Property="Height" Value="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarHeightKey}}"/>
<Setter Property="MinHeight" Value="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarHeightKey}}"/>
<Setter Property="BorderThickness" Value="0,1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" SnapsToDevicePixels="true">
<Grid.ColumnDefinitions>
<ColumnDefinition MaxWidth="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarButtonWidthKey}}"/>
<ColumnDefinition Width="0.00001*"/>
<ColumnDefinition MaxWidth="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarButtonWidthKey}}"/>
</Grid.ColumnDefinitions>
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Grid.Column="1"/>
<RepeatButton x:Name="PART_LineLeftButton" Command="{x:Static ScrollBar.LineLeftCommand}" IsEnabled="{TemplateBinding IsMouseOver}" Style="{StaticResource ScrollBarButton}">
<Path x:Name="ArrowLeft" Data="M 3.18,7 C3.18,7 5,7 5,7 5,7 1.81,3.5 1.81,3.5 1.81,3.5 5,0 5,0 5,0 3.18,0 3.18,0 3.18,0 0,3.5 0,3.5 0,3.5 3.18,7 3.18,7 z" Fill="{StaticResource ScrollBar.Static.Glyph}" Margin="3" Stretch="Uniform"/>
</RepeatButton>
<Track x:Name="PART_Track" Grid.Column="1" IsEnabled="{TemplateBinding IsMouseOver}">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageLeftCommand}" Style="{StaticResource RepeatButtonTransparent}"/>
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageRightCommand}" Style="{StaticResource RepeatButtonTransparent}"/>
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource ScrollBarThumbHorizontal}"/>
</Track.Thumb>
</Track>
<RepeatButton x:Name="PART_LineRightButton" Command="{x:Static ScrollBar.LineRightCommand}" Grid.Column="2" IsEnabled="{TemplateBinding IsMouseOver}" Style="{StaticResource ScrollBarButton}">
<Path x:Name="ArrowRight" Data="M 1.81,7 C1.81,7 0,7 0,7 0,7 3.18,3.5 3.18,3.5 3.18,3.5 0,0 0,0 0,0 1.81,0 1.81,0 1.81,0 5,3.5 5,3.5 5,3.5 1.81,7 1.81,7 z" Fill="{StaticResource ScrollBar.Static.Glyph}" Margin="3" Stretch="Uniform"/>
</RepeatButton>
</Grid>
<ControlTemplate.Triggers>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsMouseOver, ElementName=PART_LineRightButton}" Value="true"/>
<Condition Binding="{Binding IsPressed, ElementName=PART_LineRightButton}" Value="true"/>
</MultiDataTrigger.Conditions>
<Setter Property="Fill" TargetName="ArrowRight" Value="{StaticResource ScrollBar.Pressed.Glyph}"/>
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsMouseOver, ElementName=PART_LineLeftButton}" Value="true"/>
<Condition Binding="{Binding IsPressed, ElementName=PART_LineLeftButton}" Value="true"/>
</MultiDataTrigger.Conditions>
<Setter Property="Fill" TargetName="ArrowLeft" Value="{StaticResource ScrollBar.Pressed.Glyph}"/>
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsMouseOver, ElementName=PART_LineRightButton}" Value="true"/>
<Condition Binding="{Binding IsPressed, ElementName=PART_LineRightButton}" Value="false"/>
</MultiDataTrigger.Conditions>
<Setter Property="Fill" TargetName="ArrowRight" Value="{StaticResource ScrollBar.MouseOver.Glyph}"/>
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding IsMouseOver, ElementName=PART_LineLeftButton}" Value="true"/>
<Condition Binding="{Binding IsPressed, ElementName=PART_LineLeftButton}" Value="false"/>
</MultiDataTrigger.Conditions>
<Setter Property="Fill" TargetName="ArrowLeft" Value="{StaticResource ScrollBar.MouseOver.Glyph}"/>
</MultiDataTrigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Fill" TargetName="ArrowLeft" Value="{StaticResource ScrollBar.Disabled.Glyph}"/>
<Setter Property="Fill" TargetName="ArrowRight" Value="{StaticResource ScrollBar.Disabled.Glyph}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="{x:Type ScrollViewer}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollViewer}">
<Grid x:Name="Grid" Background="{TemplateBinding Background}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Rectangle x:Name="Corner" Grid.Column="1" Fill="{DynamicResource {x:Static SystemColors.ControlBrushKey}}" Grid.Row="1"/>
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" CanHorizontallyScroll="False" ContentTemplate="{TemplateBinding ContentTemplate}" CanVerticallyScroll="False" Grid.Column="0" Content="{TemplateBinding Content}" CanContentScroll="{TemplateBinding CanContentScroll}" Margin="{TemplateBinding Padding}" Grid.Row="0"/>
<ScrollBar x:Name="PART_VerticalScrollBar" AutomationProperties.AutomationId="VerticalScrollBar" Cursor="Arrow" Grid.Column="1" Maximum="{TemplateBinding ScrollableHeight}" Minimum="0" Grid.Row="0" Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource Mode=TemplatedParent}}" ViewportSize="{TemplateBinding ViewportHeight}" Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"/>
<ScrollBar x:Name="PART_HorizontalScrollBar" AutomationProperties.AutomationId="HorizontalScrollBar" Cursor="Arrow" Grid.Column="0" Maximum="{TemplateBinding ScrollableWidth}" Minimum="0" Orientation="Horizontal" Grid.Row="1" Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource Mode=TemplatedParent}}" ViewportSize="{TemplateBinding ViewportWidth}" Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
</Trigger>
</Style.Triggers>
</Style>
</ResourceDictionary>

View File

@@ -0,0 +1,581 @@
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:ReoKM"
xmlns:theme="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero2">
<!--Boolean到Visibility的转换-->
<BooleanToVisibilityConverter x:Key="bool2VisibilityConverter"/>
<Style x:Key="RadioButton_TabHeader" TargetType="{x:Type RadioButton}">
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BBBorder}"/>
<Setter Property="BorderThickness" Value="0,0,0,1"/>
<Setter Property="Foreground" Value="{DynamicResource FGWatermark}"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Stretch"/>
<Setter Property="Padding" Value="20,0,20,0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RadioButton}">
<Border x:Name="ctRoot" BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Background="{TemplateBinding Background}">
<ContentPresenter Margin="{TemplateBinding Padding}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource BGHover}"/>
<Setter Property="Foreground" Value="{DynamicResource ButFGCareful}"/>
</Trigger>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Background" Value="{DynamicResource ButBGChecked}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BBHighlight}"/>
<Setter Property="BorderThickness" Value="0,0,0,3"/>
<Setter Property="Foreground" Value="{DynamicResource FGHighlight}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="RadioButton_Item" TargetType="{x:Type RadioButton}">
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
<Setter Property="BorderBrush" Value="{DynamicResource FGKeynote}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Padding" Value="20,0,20,0"/>
<Setter Property="FontSize" Value="14"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="HorizontalContentAlignment" Value="Left"/>
<Setter Property="Foreground" Value="{DynamicResource FGContent}"/>
<Setter Property="Height" Value="40"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RadioButton}">
<Border x:Name="ctRoot" BorderBrush="{DynamicResource BBSeparator}" BorderThickness="0,0,0,0.5">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<DockPanel>
<Polyline Margin="0,0,5,0" x:Name="ctIcon" DockPanel.Dock="Right" Fill="{TemplateBinding BorderBrush}">
<Polyline.Points>
<Point X="0" Y="10"/>
<Point X="5" Y="20"/>
<Point X="0" Y="30"/>
<Point X="0" Y="10"/>
</Polyline.Points>
</Polyline>
<StackPanel Orientation="Horizontal"
Margin="{TemplateBinding Padding}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
<ContentPresenter />
</StackPanel>
</DockPanel>
</Border>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="False">
<Setter Property="Visibility" TargetName="ctIcon" Value="Collapsed"/>
</Trigger>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Background" Value="{DynamicResource BGSelected}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource BGHover}"/>
<Setter Property="Foreground" Value="{DynamicResource ButFGCareful}"/>
</Trigger>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Background" Value="{DynamicResource ButBGChecked}"/>
<Setter Property="BorderBrush" Value="{DynamicResource FGKeynote}"/>
<Setter Property="Foreground" Value="{DynamicResource FGHighlight}"/>
<Setter Property="FontSize" Value="18"/>
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="{x:Type RadioButton}">
<Setter Property="Height" Value="24"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Padding" Value="6,0,6,0"/>
<Setter Property="Margin" Value="6,0,6,0"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Background" Value="{DynamicResource BGTool}"/>
<Setter Property="Foreground" Value="{DynamicResource FGKeynote}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RadioButton}">
<Border CornerRadius="12" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<ContentPresenter Margin="{TemplateBinding Padding}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Background" Value="{DynamicResource ButFGChecked}"/>
<Setter Property="Foreground" Value="{DynamicResource FGTitle}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="{x:Type Button}">
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
<Setter Property="BorderThickness" Value="0,0,0,1"/>
<Setter Property="BorderBrush" Value="{DynamicResource BBHighlight}"/>
<Setter Property="Foreground" Value="{DynamicResource ButFGChecked}"/>
<Setter Property="Padding" Value="6,0,6,0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}">
<Border Margin="{TemplateBinding Padding}" Padding="0,2,0,2" HorizontalAlignment="Center" VerticalAlignment="Center"
BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding Foreground}">
<ContentPresenter/>
</Border>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="{DynamicResource ButFGHover}"/>
<Setter Property="Background" Value="{DynamicResource ButBGHover}"/>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Foreground" Value="{DynamicResource ButFGDisable}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="Button_Cancel" TargetType="{x:Type Button}">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="VerticalContentAlignment" Value="Stretch"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Grid x:Name="dtRoot" Background="{DynamicResource BGHyaline}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
<Border x:Name="dtBackground" Background="{DynamicResource BGMenu}" Opacity="0.85" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}"/>
<Grid HorizontalAlignment="Center" VerticalAlignment="Center" Width="128" Height="128">
<TextBlock Text="点击此区域取消" HorizontalAlignment="Center" Foreground="{DynamicResource FGTitle}"/>
<Image Stretch="Uniform" Source="/ICONS/Mouse.png"/>
</Grid>
</Grid>
<ControlTemplate.Triggers>
<Trigger SourceName="dtRoot" Property="IsMouseOver" Value="True">
<Setter TargetName="dtBackground" Property="Opacity" Value="0.5"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="{x:Type TextBox}">
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
<Setter Property="Foreground" Value="{DynamicResource FGContent}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Padding" Value="6,0,6,0"/>
<Setter Property="HorizontalContentAlignment" Value="Left"/>
<Setter Property="VerticalContentAlignment" Value="Top"/>
<Setter Property="MaxLines" Value="1"/>
<Setter Property="Tag" Value="搜索:关键字"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TextBox}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}">
<Grid>
<TextBlock x:Name="tbW" Margin="{TemplateBinding Padding}" Text="{TemplateBinding Tag}" Visibility="Collapsed"
Foreground="{DynamicResource FGWatermark}" TextTrimming="CharacterEllipsis" Opacity="0.5"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
<ScrollViewer x:Name="PART_ContentHost" Focusable="false" HorizontalScrollBarVisibility="Hidden" VerticalScrollBarVisibility="Hidden"
Background="{TemplateBinding Background}" BorderThickness="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Grid>
</Border>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="Text" Value=""/>
<Condition Property="IsFocused" Value="False"/>
</MultiTrigger.Conditions>
<Setter TargetName="tbW" Property="Visibility" Value="Visible"/>
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsReadOnly" Value="True"/>
<Condition Property="Text" Value=""/>
</MultiTrigger.Conditions>
<Setter TargetName="tbW" Property="Visibility" Value="Visible"/>
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsReadOnly" Value="False"/>
<Condition Property="IsEnabled" Value="True"/>
<Condition Property="IsFocused" Value="False"/>
</MultiTrigger.Conditions>
<Setter Property="Cursor" Value="Pen"/>
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="MaxLines" Value="1">
<Setter Property="VerticalContentAlignment" Value="Center"/>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsFocused" Value="True"/>
<Condition Property="IsReadOnly" Value="False"/>
</MultiTrigger.Conditions>
<Setter Property="Background" Value="{DynamicResource ButBGChecked}"/>
<Setter Property="Foreground" Value="{DynamicResource FGHighlight}"/>
</MultiTrigger>
</Style.Triggers>
</Style>
<Style x:Key="CheckBox_Switch" TargetType="{x:Type CheckBox}">
<Setter Property="Background" Value="{DynamicResource ButFGDefault}"/>
<Setter Property="Foreground" Value="{DynamicResource FGHighlight}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButFGCareful}"/>
<Setter Property="Height" Value="24"/>
<Style.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="CheckBox">
<Border BorderBrush="{TemplateBinding Background}" BorderThickness="1" CornerRadius="12">
<UniformGrid Rows="1">
<Grid IsEnabled="False" Background="{DynamicResource BGHyaline}" IsHitTestVisible="False">
<Border Margin="2" CornerRadius="9" Background="{TemplateBinding Background}" Opacity="0.5"/>
<ContentControl Content="{TemplateBinding Content}" Foreground="{TemplateBinding Foreground}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Grid>
<Border>
<ContentControl Content="{TemplateBinding Tag}" Foreground="{DynamicResource ButFGDisable}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
</UniformGrid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsChecked" Value="False">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="1" CornerRadius="12">
<UniformGrid Rows="1">
<Border>
<ContentControl Content="{TemplateBinding Content}" Foreground="{DynamicResource ButFGDisable}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Border>
<Grid IsEnabled="False" Background="{DynamicResource BGHyaline}" IsHitTestVisible="False">
<Border Margin="2" CornerRadius="9" Background="{TemplateBinding BorderBrush}" Opacity="0.5"/>
<ContentControl Content="{TemplateBinding Tag}" Foreground="{TemplateBinding Foreground}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Grid>
</UniformGrid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Background" Value="{DynamicResource BGDisable}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BGDisable}"/>
<Setter Property="Foreground" Value="{DynamicResource FGTitle}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="{x:Type CheckBox}">
<Setter Property="Background" Value="{DynamicResource BGEvenRow}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BBSeparator}"/>
<Setter Property="Foreground" Value="{DynamicResource ButFGChecked}"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Padding" Value="3"/>
<Setter Property="Height" Value="24"/>
<Setter Property="BorderThickness" Value="1"/>
<Style.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Foreground" Value="{DynamicResource ButFGHighlight}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButFGHighlight}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<Border BorderBrush="{TemplateBinding BorderBrush}" Padding="6,0,6,0" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="12">
<DockPanel Margin="{TemplateBinding Padding}">
<Viewbox Stretch="Uniform" MinWidth="16" MinHeight="16" Width="{Binding ActualHeight, RelativeSource={RelativeSource Self}}">
<Polyline Fill="{TemplateBinding Foreground}" Height="18" Width="18">
<Polyline.Points>
<Point X="0" Y="8"/>
<Point X="6" Y="18"/>
<Point X="18" Y="0"/>
<Point X="6" Y="12"/>
<Point X="0" Y="8"/>
</Polyline.Points>
</Polyline>
</Viewbox>
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</DockPanel>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsChecked" Value="False">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<Border BorderBrush="{TemplateBinding BorderBrush}" Padding="6,0,6,0" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="12">
<DockPanel Margin="{TemplateBinding Padding}">
<Viewbox Stretch="Uniform" MinWidth="16" MinHeight="16" Width="{Binding ActualHeight, RelativeSource={RelativeSource Self}}">
<Path Width="1024" Height="1024" Stroke="{TemplateBinding Foreground}" Fill="{TemplateBinding Foreground}" Data="M542.173333 512l347.58-347.58a21.333333 21.333333 0 1 0-30.173333-30.173333L512 481.826667 164.42 134.246667a21.333333 21.333333 0 0 0-30.173333 30.173333L481.826667 512l-347.58 347.58a21.333333 21.333333 0 0 0 30.173333 30.173333L512 542.173333l347.58 347.58a21.333333 21.333333 0 0 0 30.173333-30.173333z"/>
</Viewbox>
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</DockPanel>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource BGHover}"/>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="IsHitTestVisible" Value="False"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="CheckBox_LeftOrRight" TargetType="{x:Type CheckBox}">
<Setter Property="Background" Value="{DynamicResource ButFGDefault}"/>
<Setter Property="Foreground" Value="{DynamicResource FGHighlight}"/>
<Setter Property="BorderBrush" Value="{DynamicResource ButFGCareful}"/>
<Setter Property="Height" Value="24"/>
<Style.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="CheckBox">
<Border Background="{DynamicResource BGHyaline}" BorderBrush="{TemplateBinding Background}" BorderThickness="1" CornerRadius="12">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="24"/>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<ContentControl Foreground="{TemplateBinding Background}" Grid.Column="0" Content="{TemplateBinding Content}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<Polyline Grid.Column="1" Fill="{TemplateBinding Background}" Height="20" Width="20"
HorizontalAlignment="Center" VerticalAlignment="Center">
<Polyline.Points>
<Point X="0" Y="0"/>
<Point X="20" Y="10"/>
<Point X="0" Y="20"/>
<Point X="10" Y="10"/>
<Point X="0" Y="0"/>
</Polyline.Points>
</Polyline>
<ContentControl Grid.Column="2" Content="{TemplateBinding Tag}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsChecked" Value="False">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<Border Background="{DynamicResource BGHyaline}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="1" CornerRadius="12">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="24"/>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<ContentControl Grid.Column="0" Content="{TemplateBinding Content}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<Polyline Grid.Column="1" Fill="{TemplateBinding BorderBrush}" Height="20" Width="20"
HorizontalAlignment="Center" VerticalAlignment="Center">
<Polyline.Points>
<Point X="20" Y="0"/>
<Point X="0" Y="10"/>
<Point X="20" Y="20"/>
<Point X="10" Y="10"/>
<Point X="20" Y="0"/>
</Polyline.Points>
</Polyline>
<ContentControl Foreground="{TemplateBinding BorderBrush}" Grid.Column="2" Content="{TemplateBinding Tag}" VerticalAlignment="Center" HorizontalAlignment="Center"/>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="IsHitTestVisible" Value="False"/>
<Setter Property="BorderBrush" Value="{DynamicResource BGDisable}"/>
<Setter Property="Background" Value="{DynamicResource BGDisable}"/>
<Setter Property="Foreground" Value="{DynamicResource BGDisable}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="HCC_PropertyEditor" TargetType="{x:Type HeaderedContentControl}">
<Setter Property="Padding" Value="100,0,0,0"/>
<Setter Property="BorderBrush" Value="{DynamicResource BBSeparator}"/>
<Setter Property="BorderThickness" Value="0,0,0,1"/>
<Setter Property="Foreground" Value="{DynamicResource FGLable}"/>
<Setter Property="Background" Value="{DynamicResource BGHeader}"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type HeaderedContentControl}">
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<Grid Margin="20,0,20,0">
<ContentControl HorizontalAlignment="Left" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Content="{TemplateBinding Header}"/>
<ContentControl Margin="{TemplateBinding Padding}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Content="{TemplateBinding Content}"/>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource BGHover}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="HCC_HyalinePropertyEditor" TargetType="{x:Type HeaderedContentControl}" BasedOn="{StaticResource HCC_PropertyEditor}">
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
</Style>
<Style TargetType="{x:Type ItemsControl}">
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
<Setter Property="BorderBrush" Value="{DynamicResource BBSeparator}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ItemsControl}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}">
<ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto"
Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
<ItemsPresenter/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="TxtPwd" TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
<Setter Property="TextDecorations">
<Setter.Value>
<TextDecorationCollection>
<TextDecoration>
<TextDecoration.Pen>
<Pen Thickness="10" Brush="Black" EndLineCap="Round" StartLineCap="Round" DashCap="Round" >
<Pen.DashStyle>
<DashStyle Dashes="0.0,1.2" Offset="0.6"/>
</Pen.DashStyle>
</Pen>
</TextDecoration.Pen>
<TextDecoration.Location>
<TextDecorationLocation>Strikethrough</TextDecorationLocation>
</TextDecoration.Location>
</TextDecoration>
</TextDecorationCollection>
</Setter.Value>
</Setter>
<Style.Triggers>
<MultiTrigger>
<Setter Property="Foreground" Value="#00FFFFFF"/>
</MultiTrigger>
</Style.Triggers>
</Style>
<Style x:Key="CheckBox_Expander" TargetType="{x:Type CheckBox}">
<Setter Property="HorizontalAlignment" Value="Left"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
<Setter Property="Foreground" Value="{DynamicResource FGKeynote}"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<Grid Background="{DynamicResource BGHyaline}" Margin="{TemplateBinding Padding}" Width="{Binding RelativeSource={RelativeSource Mode=Self},Path=ActualHeight}">
<Grid Height="12" Width="12">
<Polyline x:Name="ExpandedIcon" Stroke="{TemplateBinding Foreground}" StrokeThickness="2" Fill="{TemplateBinding Background}"
Points="0,12 12,12 12,0 0,12"/>
<Polyline x:Name="CollapsedIcon" Stroke="{TemplateBinding Foreground}" StrokeThickness="2" Fill="{TemplateBinding Background}"
Points="0,0 9,6 0,12 0,0"/>
</Grid>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="False">
<Setter TargetName="ExpandedIcon" Property="Visibility" Value="Collapsed"/>
<Setter TargetName="CollapsedIcon" Property="Visibility" Value="Visible"/>
</Trigger>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="ExpandedIcon" Property="Visibility" Value="Visible"/>
<Setter TargetName="CollapsedIcon" Property="Visibility" Value="Collapsed"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsChecked" Value="False">
<Setter Property="Foreground" Value="{DynamicResource FGKeynote}"/>
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
</Trigger>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Foreground" Value="{DynamicResource BBHighlight}"/>
<Setter Property="Background" Value="{DynamicResource BBHighlight}"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="{DynamicResource ButFGCareful}"/>
<Setter Property="Background" Value="{DynamicResource ButFGHighlight}"/>
</Trigger>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Foreground" Value="{DynamicResource FGTitle}"/>
<Setter Property="Background" Value="{DynamicResource BGHyaline}"/>
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="{x:Type Expander}">
<Setter Property="IsExpanded" Value="True"/>
<Setter Property="Background" Value="{DynamicResource BGTool}"/>
<Setter Property="Foreground" Value="{DynamicResource FGHighlight}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Expander}">
<StackPanel>
<Border Height="32" BorderThickness="0,0,0,0.5" BorderBrush="{DynamicResource BBBorder}" Background="{TemplateBinding Background}">
<DockPanel>
<Border Padding="0,0,16,0" BorderBrush="{DynamicResource BBBorder}" BorderThickness="0,0,0,2.5">
<StackPanel Orientation="Horizontal">
<CheckBox Style="{DynamicResource CheckBox_Expander}" IsChecked="{Binding IsExpanded,RelativeSource={RelativeSource Mode=TemplatedParent}}" VerticalAlignment="Stretch"/>
<ContentPresenter MaxWidth="200" Content="{TemplateBinding Header}" VerticalAlignment="Center"/>
</StackPanel>
</Border>
<ContentPresenter Content="{TemplateBinding Tag}" VerticalAlignment="Stretch" DockPanel.Dock="Right"/>
</DockPanel>
</Border>
<Border Background="{DynamicResource BGOddRow}" HorizontalAlignment="Stretch"
Visibility="{TemplateBinding IsExpanded,Converter={StaticResource bool2VisibilityConverter}}">
<ContentPresenter Content="{TemplateBinding Content}"/>
</Border>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{DynamicResource BGHover}"/>
<Setter Property="Foreground" Value="{DynamicResource BBHighlight}"/>
</Trigger>
</Style.Triggers>
</Style>
</ResourceDictionary>