VRCMelonAssistant/VRCMelonAssistant/Styles/ComboBox.xaml

104 lines
6.4 KiB
Plaintext
Raw Normal View History

2020-02-26 22:48:54 +13:00
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Style TargetType="ComboBox">
2020-02-26 22:48:54 +13:00
<Setter Property="Foreground" Value="{DynamicResource TextColor}" />
<Setter Property="BorderBrush" Value="{DynamicResource ComboBoxOutline}" />
2020-02-02 06:35:18 +13:00
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ComboBox}">
<Grid Name="templateRoot" SnapsToDevicePixels="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
2020-02-26 22:48:54 +13:00
<ColumnDefinition Width="0" MinWidth="{DynamicResource SystemParameters.VerticalScrollBarWidthKey}" />
2020-02-02 06:35:18 +13:00
</Grid.ColumnDefinitions>
<Popup
2020-02-26 22:21:02 +13:00
Name="PART_Popup"
2020-02-26 22:48:54 +13:00
Grid.ColumnSpan="2"
2020-02-26 22:21:02 +13:00
AllowsTransparency="True"
2020-02-26 22:48:54 +13:00
IsOpen="{Binding IsDropDownOpen, RelativeSource={RelativeSource TemplatedParent}}"
2020-02-26 22:21:02 +13:00
Placement="Bottom"
2020-02-26 22:48:54 +13:00
PopupAnimation="Slide">
2020-02-02 06:35:18 +13:00
<Border
2020-02-26 22:21:02 +13:00
Name="DropDownBorder"
2020-02-26 22:48:54 +13:00
MinWidth="{Binding ActualWidth, ElementName=templateRoot}"
2020-02-26 22:21:02 +13:00
Background="{DynamicResource ComboBoxBackground}"
2020-02-26 22:48:54 +13:00
BorderBrush="{DynamicResource ComboBoxOutline}"
BorderThickness="1">
2020-02-02 06:35:18 +13:00
<ScrollViewer Name="DropDownScrollViewer">
<Grid Name="grid" RenderOptions.ClearTypeHint="Enabled">
<Canvas
2020-02-26 22:21:02 +13:00
Name="canvas"
2020-02-26 22:48:54 +13:00
Width="0"
2020-02-26 22:21:02 +13:00
Height="0"
2020-02-26 22:48:54 +13:00
HorizontalAlignment="Left"
VerticalAlignment="Top">
2020-02-02 06:35:18 +13:00
<Rectangle
2020-02-26 22:21:02 +13:00
Name="OpaqueRect"
2020-02-26 22:48:54 +13:00
MinWidth="{Binding ActualWidth, ElementName=DropDownBorder}"
2020-02-26 22:21:02 +13:00
MinHeight="{Binding ActualHeight, ElementName=DropDownBorder}"
2020-02-26 22:48:54 +13:00
Fill="{Binding Background, ElementName=DropDownBorder}" />
2020-02-02 06:35:18 +13:00
</Canvas>
<ItemsPresenter
2020-02-26 22:21:02 +13:00
Name="ItemsPresenter"
KeyboardNavigation.DirectionalNavigation="Contained"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
2020-02-02 06:35:18 +13:00
</Grid>
</ScrollViewer>
</Border>
</Popup>
<Border
2020-02-26 22:21:02 +13:00
Name="Border"
2020-02-26 22:48:54 +13:00
Margin="0"
Background="Transparent">
2020-02-02 06:35:18 +13:00
<TextBox
2020-02-26 22:21:02 +13:00
Name="PART_EditableTextBox"
Margin="2.5"
2020-02-26 22:48:54 +13:00
HorizontalContentAlignment="Left"
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
Background="Transparent"
2020-02-02 06:35:18 +13:00
BorderBrush="Transparent"
BorderThickness="0"
Foreground="{DynamicResource TextColor}"
2020-02-26 22:21:02 +13:00
IsReadOnly="True"
2020-02-26 22:48:54 +13:00
Text="{TemplateBinding Text}" />
2020-02-02 06:35:18 +13:00
</Border>
<ToggleButton
2020-02-26 22:21:02 +13:00
Name="toggleButton"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
IsChecked="{Binding IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" />
2020-02-02 06:35:18 +13:00
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter TargetName="Border" Property="UIElement.Opacity" Value="0.56" />
</Trigger>
<Trigger Property="UIElement.IsKeyboardFocusWithin" Value="True">
<Setter Property="Foreground" Value="#FF000000" />
</Trigger>
2020-02-26 22:48:54 +13:00
<Trigger SourceName="PART_Popup" Property="Popup.HasDropShadow" Value="True" />
2020-02-02 06:35:18 +13:00
<Trigger Property="ItemsControl.HasItems" Value="False">
<Setter TargetName="DropDownBorder" Property="Height" Value="95" />
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="ItemsControl.IsGrouping" Value="True" />
<Condition Property="VirtualizingPanel.IsVirtualizingWhenGrouping" Value="False" />
</MultiTrigger.Conditions>
<Setter Property="ScrollViewer.CanContentScroll" Value="False" />
</MultiTrigger>
<Trigger SourceName="DropDownScrollViewer" Property="CanContentScroll" Value="False">
<Setter TargetName="OpaqueRect" Property="Canvas.Top" Value="{Binding VerticalOffset, ElementName=DropDownScrollViewer}" />
<Setter TargetName="OpaqueRect" Property="Canvas.Left" Value="{Binding HorizontalOffset, ElementName=DropDownScrollViewer}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="ComboBox.IsEditable" Value="True">
<Setter Property="IsTabStop" Value="False" />
<Setter Property="Padding" Value="2" />
</Trigger>
</Style.Triggers>
</Style>
2020-02-17 14:57:58 +13:00
</ResourceDictionary>