我有一个包含 TextBoxes 和 DatePickers 的 WPF 表单。DatePicker 文本框的字体真的很模糊,因为我在样式上添加了阴影效果。最初,所有控件都具有作为样式的一部分的显式投影效果,但我通过从控件中删除投影效果并将其移动到具有相同投影的矩形来解决此问题。
然后我将矩形直接放在文本框后面——我仍然有视觉效果,并且覆盖控件中的字体看起来很棒。
<DropShadowEffect x:Key="dropShadow" Color="Gray" Opacity=".50" ShadowDepth="8" />
<Style x:Key="BackingRectangleStyle" TargetType="Rectangle">
<Setter Property="Effect" Value="{StaticResource dropShadow}" />
</Style>
<Rectangle Grid.Row="1" Grid.Column="3" Style="{StaticResource BackingRectangleStyle}"/>
<TextBox Grid.Row="1" Grid.Column="3" ... />
但是,我对 DatePicker TextBoxes 的模糊字体也有同样的问题,因为投影效果仍然直接在控件上。
我没有 DatePicker 样式,但我有 DatePickerTextBox 的样式,这就是效果的来源。
<Style TargetType="{x:Type DatePickerTextBox}">
<Setter Property="Effect" Value="{StaticResource dropShadow}" />
</Style>
我不知道该怎么做是按照我之前删除效果的模式,创建一个具有相同效果的 Rectangle 并将其放在 DatePicker TextBox 后面,使其大小相同,等等。我需要一些关于 XAML 的帮助这样做。
谁能给我任何建议?
谢谢!