我正在定制用户点击时silverlight应用程序的外观,并在一些帮助下成功地交换出资源字典并重新应用样式到按钮-其中重新应用的样式来自新的资源字典。这是有效的,但我需要使其可扩展,因为整个应用程序需要重新设计一个单一的用户点击。
我用下面的语句重新应用按钮的样式:
this.button1.Style = (Style)App.Current.Resources["ButtonTheme"];
我想做的两件事是:
- 获取页面上所有对象(所有按钮,文本框等)的集合
- 循环它们并重新应用对象的当前样式(在交换出资源字典之后)
在这里帮助非常感激。另外,请告诉我是否有更好的方法。
多谢
您需要从资源字典中删除"旧"主题,然后合并到新的主题中请看这个链接和这个
您不需要手动操作。
请看下面的示例http://weblogs.asp.net/lduveau/archive/2010/05/31/dynamically-apply-and-change-theme-with-the-silverlight-toolkit.aspx