【发布时间】:2009-10-19 13:38:54
【问题描述】:
请不要陷入我的例子中,为了这个问题,请耐心等待:
在我的 WPF 应用程序中,如果我希望所有 TextBox 都具有“绿色”背景,我可以在我的 Application.Resources 中轻松设置它。
<Style TargetType="TextBox">
<Setter Property="Background" Value="Green" />
</Style>
这工作完美...(感谢 WPF)。但是,如果我的应用程序中有一个 TextBox,我想添加更多样式到...我失去我的绿色背景。
例子:
<TextBox>
<TextBox.Style>
<Style>
<Style.Triggers>
<Trigger Property="TextBox.IsMouseOver" Value="True">
<Setter Property="TextBox.Foreground" Value="Red" />
</Trigger>
</Style.Triggers>
</Style>
</TextBox.Style>
</TextBox>
当鼠标悬停时,TextBox 将正确地具有红色前景,但绿色背景完全丢失。
所以,问题是:我如何告诉 WPF 不要仅仅因为我在某个地方添加了一个简单的、不冲突的、如此微小的样式而完全清除来自上面的所有样式?
【问题讨论】: