Я изменил ControrTemplate кнопки, дал ей границу с CornerRadius и BevelBitmpaEffect. Выглядит достаточно прилично для минимальных усилий. Поместите его на цветной фон, а затем проблема станет очевидной.WPF: шаблон кнопки w/cornerRadius и Bevel выглядит неправильно
Угол, из которого вытекает светлый свет, есть белый снип с прямоугольным углом. Возможно, исходя из светового эффекта, но очень очевидного с cornerRadius. Я не думаю, что я мог бы что-нибудь с этим сделать (кроме очевидного, как не использовать cornerRadius)?
EDIT:
Этот код должен генерировать ту же проблему для вас
<Style x:Key="TabButtons" TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border CornerRadius="8"
SnapsToDevicePixels="True"
Name="BtnBorder"
Width="80"
Height="35"
BorderThickness="1"
BorderBrush="DarkBlue">
<Border.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="LightBlue" Offset="0" />
<GradientStop Color="DarkBlue" Offset="1" />
</LinearGradientBrush>
</Border.Background>
<Border.BitmapEffect>
<BevelBitmapEffect BevelWidth="5"
EdgeProfile="CurvedOut"
LightAngle="135"
Relief="0.1"
Smoothness="1" />
</Border.BitmapEffect>
<ContentPresenter Name="BtnContent" VerticalAlignment="Center" HorizontalAlignment="Center" ContentSource="Content" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Используйте эту кнопку на фоне LightBlue, например
<Border Background="LightBlue" >
<Button Style={StaticResource TabButtons} >Test</Button>
</Border>
Я использовал SnapsToDevicePixels раньше в некоторых проблемах, но здесь, похоже, это не так. Я могу опубликовать Controltemplate для кнопки, чтобы показать вам, как это выглядит. –
Проверьте отредактированный ответ ... – Marko