이미 아래와 같은 스타일을 사용하고있는 경우 창 스타일에 추가 스타일을 추가하는 방법은 무엇입니까?
<Style x:Key="MyWindowStyle" TargetType="Window">
<Setter Property="Control.Background" Value="PaleGreen"/>
<Setter Property="Window.Title" Value="Styled Window"/>
</Style>
내 기본 창은 다음과 같습니다.
<Window x:Class="Binding.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Binding"
mc:Ignorable="d"
Style="{StaticResource MyWindowStyle}"
Title="MainWindow" Height="450" Width="800">
<StackPanel>
<Label Content="Test Window" />
</StackPanel>
</Window>
그래서 사용하고 MyWindowStyle
싶지만 다음과 같은 스타일을 추가하고 싶다고 말합니다.
<Setter Property="BorderThickness" Value="3"/>
<Setter Property="BorderBrush" Value="Red"/>
어떻게하나요? 구문을 이해할 수 없습니다.
문제는 사용 StaticResouce
하기 전에 리소스를 초기화해야한다는 것입니다.
귀하의 경우에는 창 내부에 리소스가 있으므로 창을 초기화하기 전에 초기화되지 않습니다.
DynamicResource
대신 사용 하면 작동합니다.
<Window x:Class="Binding.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:Binding"
mc:Ignorable="d"
Style="{DynamicResource MyWindowStyle}"
Title="MainWindow" Height="450" Width="800">
<Window.Resources>
<Style x:Key="MyWindowStyle" TargetType="{x:Type Window}">
<Setter Property="Control.Background" Value="PaleGreen"/>
<Setter Property="Window.Title" Value="Styled Window"/>
<Setter Property="BorderThickness" Value="3"/>
<Setter Property="BorderBrush" Value="Red"/>
</Style>
</Window.Resources>
<StackPanel>
<Label Content="Test Window" />
</StackPanel>
</Window>
WPF 리소스에 대한 자세한 내용은 여기 를 참조하십시오 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다