如何将ComboBox的Textbox SelectionBrush设置为其他颜色?

时间:2013-01-28 03:35:30

标签: wpf combobox textbox

已经有一篇帖子,但似乎没有解决方案。也许是在为SelectionBrush公开TextBox属性之前。

我的资源中Style TextBox正常工作(所选文字不是默认的系统颜色,而是我选择的颜色)。我假设我的自定义TextBox模板的ComboBox组件会使用TextBox Style,但ComboBox TextBox中的所选文字仍然是蓝色。

由于我知道我可以控制TextBox的所选文字颜色,如何在ComboBox ControlTemplate中控制它?我有图像和代码exaqmples但这个论坛不会让我发布,因为这是我第一次。

2 个答案:

答案 0 :(得分:0)

您可以覆盖ComboBox HighlightBrushKey颜色

    <ComboBox x:Name="MyCombo" ItemsSource="{Binding Items}" Margin="0,0,0,148">
        <ComboBox.Resources>
            <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Yellow" />
        </ComboBox.Resources>
    </ComboBox>

答案 1 :(得分:0)

您可以使用以下代码,它可以解决您的问题

<Window.Resources>
        <Style TargetType="{x:Type TextBox}">
            <Setter Property="SelectionBrush" Value="Yellow"></Setter>
        </Style>
    </Window.Resources>
    <Grid>
        <TextBox Text="ramesh test" Margin="67,12,184,240" />
        <ComboBox ItemsSource="{Binding}" Name="testCombo" Margin="67,48,184,204">
            <ComboBox.ItemTemplate>
                <DataTemplate>
                   <TextBox  Text="mytext" Width="100" Height="50" />
                </DataTemplate>
            </ComboBox.ItemTemplate>            
        </ComboBox>
    </Grid>