如何从资源字典中获取代码样式?

时间:2009-08-13 17:54:11

标签: silverlight-3.0

如果你将风格放在app.xmal中,那么你可以使用以下代码获得样式:

Style = Application.Current.Resources [“myStyle”]为Style;

但是如果我将样式放在单独文件Styles.xmal的字典资源中,如:

 <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>                
                <ResourceDictionary Source="Assets/Styles.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>

然后如何在代码中获得样式?

2 个答案:

答案 0 :(得分:8)

找出原因:代码

Style = Application.Current.Resources["myStyle"] as Style;

工作正常。我的问题是由其他一些因素引起的。

答案 1 :(得分:0)

小费:

  • 如果您要查找的内容位于Styles.xaml或Resources.xaml
  • ,请注意不要错误地为当前对象执行this.Resources
  • 也不希望看到Application.Current.Resources的“添加观看”对话框中的所有资源。在XAML中定义的那些将不存在(至少不在顶层)