【发布时间】:2010-11-13 21:29:30
【问题描述】:
我正在编写一个非常基本的 WPF 对话框,并希望将简单的样式应用于从 Control 类继承的所有对象。我正在使用的代码:
<Window.Resources>
<Style TargetType="{x:Type Control}">
<Setter Property="Margin" Value="20"/>
</Style>
</Window.Resources>
<StackPanel>
<TextBlock Text="some text"/>
<TextBox x:Name="x_NameTextBox"/>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<Button x:Name="x_CancelButton" Click="x_CancelButton_Click" Content="Cancel"/>
<Button x:Name="x_OkButton" Click="x_OkButton_Click" Content="OK"/>
</StackPanel>
</StackPanel>
</Window>
上面定义的样式根本不会改变窗口的布局,除非我指定一个键并为每个单独的对象设置样式,这正是我想要避免的。它也适用于更具体的类型(例如,将 TargetType 设置为 Button。)
任何想法为什么这不起作用?
【问题讨论】:
-
我希望情况不会如此,但我想我只能硬着头皮了。谢谢!