Silverlight应用隐式样式设置其他样式

时间:2011-07-13 10:57:34

标签: c# silverlight

我有一个带有在外部资源字典文件中定义的Key的TextBox样式,然后我正在尝试定义一个新的隐式TextBox样式,它从资源字典中设置“Keyed”样式,所以基本上我想从资源中设置样式字典作为TextBox的默认值,但我无法从那里删除Key,因为它被其他代码使用。

<ResourceDictionary Source="FileWithNiceTextBoxStyle.xaml"/>
<Style TargetType="TextBox">
    <Setter Property="Style" Value="{StaticResource NiceTextBoxStyle}"/>
</Style>

但是这不起作用,导致Visual Studio崩溃。

1 个答案:

答案 0 :(得分:2)

使用BasedOn属性:

<Style TargetType="TextBox" x:Key="GlobalTextBox">
    <Setter Property="Background" Value="Pink"/>
</Style>
<Style TargetType="TextBox" BasedOn="{StaticResource GlobalTextBox}"></Style>
...
<TextBox Text="I have pink background"/>