Преобразование стандартного combox в плоский стиль combobox WPF
я хочу комбинированный ящик с плоским стилем, но ему не хватает какой-то естественной анимации
Что я уже пробовал:
<Style x:Key="ComboBoxFlat" TargetType="{x:Type ComboBox}"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="ComboBox"> <Grid> <ToggleButton Grid.Column="2" Focusable="false" IsChecked="{Binding Path=IsDropDownOpen,Mode=TwoWay,RelativeSource={RelativeSource TemplatedParent}}" > <ToggleButton.Template> <ControlTemplate> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="5*" /> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <Border x:Name="Border" Grid.ColumnSpan="2" CornerRadius="0" Background="#E1E1E1" BorderBrush="#ADADAD" BorderThickness="1" /> <Border Grid.Column="0" CornerRadius="0" Margin="1" Background="#E1E1E1" BorderBrush="#1f2432" BorderThickness="0,0,0,0" /> <Path x:Name="Arrow" Grid.Column="1" Fill="#606978" HorizontalAlignment="Right" Margin="0,0,5,0" VerticalAlignment="Center" Data="M0,0 L0,2 L4,6 L8,2 L8,0 L4,4 z"/> <!--Data="M 0 0 L 4 4 L 8 0 Z"--> </Grid> <!--<ControlTemplate.Triggers> <Trigger Property="ToggleButton.IsMouseOver" Value="true"> <Setter TargetName="Border" Property="Background" Value="#91A3C3" /> </Trigger> </ControlTemplate.Triggers>--> </ControlTemplate> </ToggleButton.Template> </ToggleButton> <ContentPresenter Name="ContentSite" IsHitTestVisible="False" Content="{TemplateBinding SelectionBoxItem}" ContentTemplate="{TemplateBinding SelectionBoxItemTemplate}" ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}" Margin="3" /> <TextBox x:Name="PART_EditableTextBox" Visibility="Hidden" IsReadOnly="{TemplateBinding IsReadOnly}"/> <Popup Name="Popup" Placement="Bottom" IsOpen="{TemplateBinding IsDropDownOpen}" AllowsTransparency="True" Focusable="False" PopupAnimation="Slide"> <Grid Name="DropDown" SnapsToDevicePixels="True" MinWidth="{TemplateBinding ActualWidth}" MaxHeight="{TemplateBinding MaxDropDownHeight}"> <Border x:Name="DropDownBorder" Background="#FFFFFF" /> <ScrollViewer SnapsToDevicePixels="True"> <StackPanel IsItemsHost="True" /> </ScrollViewer> </Grid> </Popup> </Grid> </ControlTemplate> </Setter.Value> </Setter> <Style.Triggers> </Style.Triggers> </Style>