我们有一个应用程序,其中我们将默认控件样式定义为隐式样式。
XAML:
<Style TargetType="Button">
[...]
</Style>
这些样式现在应用于应用程序中的每个按钮。
有时我们将代码隐藏中的样式更改为不同的样式。
XAML:
<Style x:Key="HighlightStyle" TargetType="Button">
[...]
</Style>
代码:
cmdButton.Style = App.Current.Resources("HighlightStyle")
然后我们又想删除样式并返回隐式样式,但这似乎是不可能的:
代码:
cmdButton.Style = Nothing
结果是无样式
Button
.我也在这里读过 http://www.silverlightshow.net/items/Implicit-Styles-in-Silverlight-4.aspx TargetType-Value 作为 Key 应该可以访问所有隐式样式,但这似乎也不起作用。
有谁知道解决这个问题的方法?
最佳答案
像往常一样,一旦我发布了问题,我就想出了一个解决方案:
在对象上使用 ClearValue 方法会清除样式属性,使其保持默认样式。
cmdButton.ClearValue(FrameworkElement.StyleProperty)
关于silverlight - 在后面的代码中设置隐式样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8524555/