Переопределение стиля по умолчанию для границы делает мое окно WPF закругленным

Я переопределяю границы CornerRadius как стиль по умолчанию в файле app.xaml (как показано ниже)

<Application x:Class="BorderCornerProblem.App"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         StartupUri="MainWindow.xaml">
<Application.Resources>
    <Style TargetType="{x:Type Border}">
        <Setter Property="OverridesDefaultStyle" Value="true"/>
        <Setter Property="CornerRadius" Value="50"/>  
    </Style>
</Application.Resources>
</Application>

и в файле MainWindow.xaml у меня есть

<Window x:Class="BorderCornerProblem.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">       
</Window>

в результате окно имеет черные закругленные углы.

Тогда мой вопрос заключается в том, как определить DefaultStyle с CornerRadius, установленным для Border, который не будет мешать моему окну?


person 4rchie    schedule 13.02.2012    source источник
comment
Итак, вы хотите изменить некоторые стили границ, но не все?   -  person ChrisBD    schedule 13.02.2012
comment
Ну да. Я хотел бы иметь один стиль для всех границ, которые я использую явно в xaml   -  person 4rchie    schedule 13.02.2012


Ответы (1)


Вы действительно не должны не глобально стилизовать Borders, они повсюду.

Дайте стилю ключ и ссылайтесь на него только там, где это необходимо.

person H.B.    schedule 13.02.2012
comment
Мне действительно не нравится ваш ответ, но он выглядит ооочень правдивым :( На DataGrid также влияет мой стиль границ. Я сделаю свой собственный контроль с помощью правильного стиля. Спасибо за вашу помощь. - person 4rchie; 13.02.2012