【发布时间】:2015-09-08 22:26:32
【问题描述】:
当鼠标悬停在我的 ComboBox 上时,我的 ComboBox 的背景会出现一对可怕的蓝色/浅蓝色。 我在这里尝试了解决方案:ComboBox Mouse over color、WPF Combobox Mouse Over、How to style ComboBox Background on Mouse Hover? 或WPF combobox default hover color on togglebutton,但它没有改变任何东西,我仍然在悬停时获得默认颜色。
有什么建议吗?
提前谢谢大家, 德马西亚多。
这是 XAML 代码:
<Window x:Class="Homepage.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
<Window.Resources>
<Storyboard x:Key="TileZoomIn">
<ThicknessAnimation Storyboard.TargetProperty="Margin" From="10" To="1" Duration="0:0:0.1"/>
</Storyboard>
<Storyboard x:Key="TileZoomOut">
<ThicknessAnimation Storyboard.TargetProperty="Margin" From="1" To="10" Duration="0:0:0.1"/>
</Storyboard>
<DropShadowEffect x:Key="DropShadowEffect" BlurRadius="20" Opacity="1" ShadowDepth="0" Color="White"/>
</Window.Resources>
<Grid ShowGridLines="True">
<ComboBox Name="comboBoxTRIG" FontSize="40" Width="210" Height="98" HorizontalAlignment="Left" HorizontalContentAlignment="Center" Margin="40,-180,0,256" Background="Transparent" BorderBrush="Transparent" Foreground="White" BorderThickness="0">
<ComboBox Margin="25" Width="130" Height="50">
<ComboBox.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Green"/>
</ComboBox.Resources>
</ComboBox>
</ComboBox>
</Grid>
</Window>
【问题讨论】:
-
同时发布您的 XAML 代码
-
欢迎在 SO 上有一个良好的开端 - 这是一个进行良好研究和格式良好的问题的示例。
-
您的 App.xaml 中有资源字典吗?可能覆盖组合框的默认样式?另外,为什么组合框在组合框内?
-
创建一个带有 IsMouseOver 触发器的 ComboBoxItem 样式并将其指定为 ItemContainerStyle
-
@Michel Ciechan :comboBox 内的comboBox 是一个错误,因为我将代码更改了10 亿次,所以复制粘贴不正确。没有技巧,没有什么特别的,我只是想在鼠标指针经过它时更改组合框的默认颜色......我不敢相信我已经在这一点上花了 3 天时间而没有迈出一步好的方向。我不明白您关于 App.xaml 的问题。什么是资源字典?对不起,英语不是我的母语,有时它只是没有帮助......