130 lines
7.9 KiB
Plaintext
130 lines
7.9 KiB
Plaintext
|
|
<ResourceDictionary
|
||
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||
|
|
xmlns:exc="clr-namespace:Wpf.Ui.Extend.Controls">
|
||
|
|
|
||
|
|
<Style TargetType="{x:Type exc:TreeComboBox}">
|
||
|
|
<!--<Setter Property="SnapsToDevicePixels"
|
||
|
|
Value="true" />-->
|
||
|
|
<!--<Setter Property="OverridesDefaultStyle"
|
||
|
|
Value="true" />-->
|
||
|
|
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto" />
|
||
|
|
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto" />
|
||
|
|
<Setter Property="ScrollViewer.CanContentScroll" Value="true" />
|
||
|
|
<Setter Property="MinWidth" Value="120" />
|
||
|
|
<Setter Property="MinHeight" Value="20" />
|
||
|
|
<Setter Property="Template">
|
||
|
|
<Setter.Value>
|
||
|
|
<ControlTemplate TargetType="{x:Type exc:TreeComboBox}">
|
||
|
|
<Grid>
|
||
|
|
<ToggleButton
|
||
|
|
x:Name="ToggleButton"
|
||
|
|
ClickMode="Press"
|
||
|
|
Focusable="false"
|
||
|
|
IsChecked="{Binding IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}"
|
||
|
|
Template="{StaticResource ComboBoxToggleButton}" />
|
||
|
|
<Grid IsHitTestVisible="False">
|
||
|
|
<ItemsControl
|
||
|
|
x:Name="ContentSite"
|
||
|
|
Margin="3,3,23,3"
|
||
|
|
HorizontalAlignment="Left"
|
||
|
|
VerticalAlignment="Center"
|
||
|
|
HorizontalContentAlignment="Center"
|
||
|
|
VerticalContentAlignment="Center"
|
||
|
|
ItemTemplate="{TemplateBinding ItemTemplate}"
|
||
|
|
ItemTemplateSelector="{TemplateBinding ItemTemplateSelector}"
|
||
|
|
ItemsSource="{Binding SelectedItems, RelativeSource={RelativeSource Mode=TemplatedParent}}">
|
||
|
|
<ItemsControl.ItemsPanel>
|
||
|
|
<ItemsPanelTemplate>
|
||
|
|
<WrapPanel Orientation="Horizontal" />
|
||
|
|
</ItemsPanelTemplate>
|
||
|
|
</ItemsControl.ItemsPanel>
|
||
|
|
|
||
|
|
</ItemsControl>
|
||
|
|
</Grid>
|
||
|
|
<TextBox
|
||
|
|
x:Name="PART_EditableTextBox"
|
||
|
|
Margin="3,3,23,3"
|
||
|
|
HorizontalAlignment="Left"
|
||
|
|
VerticalAlignment="Bottom"
|
||
|
|
Background="Transparent"
|
||
|
|
Focusable="True"
|
||
|
|
IsReadOnly="{TemplateBinding IsReadOnly}"
|
||
|
|
Style="{x:Null}"
|
||
|
|
Template="{StaticResource ComboBoxTextBox}"
|
||
|
|
Visibility="Hidden" />
|
||
|
|
<Popup
|
||
|
|
x:Name="Popup"
|
||
|
|
AllowsTransparency="True"
|
||
|
|
Focusable="False"
|
||
|
|
IsOpen="{TemplateBinding IsDropDownOpen}"
|
||
|
|
Placement="Bottom"
|
||
|
|
PopupAnimation="Slide">
|
||
|
|
<Grid
|
||
|
|
x:Name="DropDown"
|
||
|
|
MinWidth="{TemplateBinding ActualWidth}"
|
||
|
|
MaxHeight="{TemplateBinding MaxDropDownHeight}"
|
||
|
|
SnapsToDevicePixels="True">
|
||
|
|
<Border x:Name="DropDownBorder" BorderThickness="1">
|
||
|
|
<!--<Border.BorderBrush>
|
||
|
|
<SolidColorBrush Color="{DynamicResource BorderMediumColor}" />
|
||
|
|
</Border.BorderBrush>
|
||
|
|
<Border.Background>
|
||
|
|
<SolidColorBrush Color="{DynamicResource ControlLightColor}" />
|
||
|
|
</Border.Background>-->
|
||
|
|
</Border>
|
||
|
|
<ScrollViewer Margin="4,6,4,6" SnapsToDevicePixels="True">
|
||
|
|
<exc:ExtendedTreeView
|
||
|
|
x:Name="treeView"
|
||
|
|
IsCheckedPath="{TemplateBinding IsCheckedPath}"
|
||
|
|
IsExpandedPath="{TemplateBinding IsExpandedPath}"
|
||
|
|
IsSelectedPath="{TemplateBinding IsSelectedPath}"
|
||
|
|
ItemTemplate="{TemplateBinding ItemTemplate}"
|
||
|
|
ItemsSource="{TemplateBinding ItemsSource}" />
|
||
|
|
</ScrollViewer>
|
||
|
|
</Grid>
|
||
|
|
</Popup>
|
||
|
|
<VisualStateManager.VisualStateGroups>
|
||
|
|
<VisualStateGroup x:Name="CommonStates">
|
||
|
|
<VisualState x:Name="Normal" />
|
||
|
|
<VisualState x:Name="MouseOver" />
|
||
|
|
<VisualState x:Name="Disabled">
|
||
|
|
<Storyboard>
|
||
|
|
<ColorAnimationUsingKeyFrames Storyboard.TargetName="PART_EditableTextBox" Storyboard.TargetProperty="(TextElement.Foreground). (SolidColorBrush.Color)">
|
||
|
|
<EasingColorKeyFrame KeyTime="0" Value="{StaticResource DisabledForegroundColor}" />
|
||
|
|
</ColorAnimationUsingKeyFrames>
|
||
|
|
</Storyboard>
|
||
|
|
</VisualState>
|
||
|
|
</VisualStateGroup>
|
||
|
|
<VisualStateGroup x:Name="EditStates">
|
||
|
|
<VisualState x:Name="Editable">
|
||
|
|
<Storyboard>
|
||
|
|
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="PART_EditableTextBox" Storyboard.TargetProperty="(UIElement.Visibility)">
|
||
|
|
<DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static Visibility.Visible}" />
|
||
|
|
</ObjectAnimationUsingKeyFrames>
|
||
|
|
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentSite" Storyboard.TargetProperty="(UIElement.Visibility)">
|
||
|
|
<DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static Visibility.Hidden}" />
|
||
|
|
</ObjectAnimationUsingKeyFrames>
|
||
|
|
</Storyboard>
|
||
|
|
</VisualState>
|
||
|
|
<VisualState x:Name="Uneditable" />
|
||
|
|
</VisualStateGroup>
|
||
|
|
</VisualStateManager.VisualStateGroups>
|
||
|
|
</Grid>
|
||
|
|
<ControlTemplate.Triggers>
|
||
|
|
<Trigger Property="HasItems" Value="false">
|
||
|
|
<Setter TargetName="DropDownBorder" Property="MinHeight" Value="95" />
|
||
|
|
</Trigger>
|
||
|
|
<Trigger Property="IsGrouping" Value="true">
|
||
|
|
<Setter Property="ScrollViewer.CanContentScroll" Value="false" />
|
||
|
|
</Trigger>
|
||
|
|
<Trigger SourceName="Popup" Property="AllowsTransparency" Value="true">
|
||
|
|
<Setter TargetName="DropDownBorder" Property="CornerRadius" Value="4" />
|
||
|
|
<Setter TargetName="DropDownBorder" Property="Margin" Value="0,2,0,0" />
|
||
|
|
</Trigger>
|
||
|
|
</ControlTemplate.Triggers>
|
||
|
|
</ControlTemplate>
|
||
|
|
</Setter.Value>
|
||
|
|
</Setter>
|
||
|
|
</Style>
|
||
|
|
</ResourceDictionary>
|