wpf combobox的三角形的颜色怎么写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了wpf combobox的三角形的颜色怎么写相关的知识,希望对你有一定的参考价值。

原有的 是黑色的,我想改成自己想要的 颜色??怎么改?还有就是下拉 后选项的颜色怎么写的??

参考技术A 正好刚写的Combobox的模板,拿着玩吧。。。觉得不满意就重写,没必要纠结于他怎么做。。。默认模板都不够爽。。。只要修改模板中相关控件的颜色即可。。。
<ControlTemplate TargetType="TextBox" x:Key="ComboBox_TextBox">
<Border x:Name="PART_ContentHost" Focusable="False" Background="TemplateBinding Background" BorderBrush="White" BorderThickness="1"/>
</ControlTemplate>
<ControlTemplate x:Key="ComboBoxToggleButton" TargetType="x:Type ToggleButton">
<Border Grid.Column="1" Cursor="Hand" BorderBrush="White" BorderThickness="1" Background="#ff00a0a0" Height="21" Width="21">
<Path Data="M 6,7 L 10.5,14 L 15,7 z" Fill="White"/>
</Border>
</ControlTemplate>
<Style TargetType="ComboBox">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ComboBox" >
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Border Grid.ColumnSpan="2" BorderBrush="White" BorderThickness="1"/>

<ToggleButton Grid.Column="1" Template="DynamicResource ComboBoxToggleButton" x:Name="ToggleButton" Focusable="false" IsChecked="Binding Path=IsDropDownOpen, Mode=TwoWay, RelativeSource=RelativeSource TemplatedParent" ClickMode="Press"/>
<ContentPresenter HorizontalAlignment="Left" Margin="3,3,23,3" x:Name="ContentSite" VerticalAlignment="Center" Content="TemplateBinding SelectionBoxItem" ContentTemplate="TemplateBinding SelectionBoxItemTemplate" ContentTemplateSelector="TemplateBinding ItemTemplateSelector" IsHitTestVisible="False"/>

<TextBox Visibility="Hidden" Template="DynamicResource ComboBox_TextBox" HorizontalAlignment="Left" x:Name="PART_EditableTextBox" Style="x:Null" VerticalAlignment="Center" Focusable="True" Background="Transparent" IsReadOnly="TemplateBinding IsReadOnly"/>

<Popup IsOpen="TemplateBinding IsDropDownOpen" Placement="Bottom" x:Name="Popup" Focusable="False" AllowsTransparency="True" PopupAnimation="Slide" >
<Grid MaxHeight="TemplateBinding MaxDropDownHeight" MinWidth="TemplateBinding ActualWidth" x:Name="DropDown" SnapsToDevicePixels="True">
<Border x:Name="DropDownBorder" Background="DynamicResource WindowBackgroundBrush" BorderBrush="DynamicResource SolidBorderBrush" BorderThickness="1"/>
<ScrollViewer Margin="4,6,4,6" Style="DynamicResource SimpleScrollViewer" SnapsToDevicePixels="True" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" CanContentScroll="True">

<Border BorderBrush="White" BorderThickness="1" >
<StackPanel IsItemsHost="True" KeyboardNavigation.DirectionalNavigation="Contained" Background="#01000000"/>
</Border>
</ScrollViewer>
</Grid>
</Popup>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>本回答被提问者和网友采纳

wpf里combobox怎么取数据

怎么把combobox中的显示的值写入数据库里,我用
string s = null;
s = comboBox1.SelectedValue.ToString();
取combobox1的值发现取到得是“system.windows.control.comboboxItem:基层”
而我想要的就是其中显示的“基层"
急求!^_^

参考技术A 你好:

combox是这样组成的:combox的Items属性包含多个comboxItem,comboxItem是保存数据的地方。
通过comboBox1.SelectedItem.Content或omboBox1.Items[index].Content来获得的
参考技术B

    有没有使用绑定?

    有没有指定SelectedValuePath?

追问

没有,请问怎么用?

追答

如果你是直接在Xaml里面添加的Item,那试试直接用s = comboBox1.Text;

追问


基层
高级

追答

直接用s = comboBox1.Text

本回答被提问者采纳

以上是关于wpf combobox的三角形的颜色怎么写的主要内容,如果未能解决你的问题,请参考以下文章

wpf combobox样式不显示倒三角

WPF简单模拟QQ登录背景动画

WPF简单模拟QQ登录背景动画(转)

wpf设置带阴影矩形透明度

wpf中鼠标放到combobox的下拉菜单选项上,该选项就会改变背景颜色,怎么取消变色?

combobox控件使用