我可以在任何地方找到的每个示例都说您可以通过复制ThemeResources.xaml和System.Windows.xaml文件并将它们作为合并的词典包含在您的应用中来创建自定义主题.
http://windowsphonegeek.com/articles/Creating-WP7-Custom-Theme-ndash-Basic-Theme-Implementation
Overriding themes in Windows Phone 7
<Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="Resources/CustomThemeResources.xaml" /> <ResourceDictionary Source="Resources/CustomThemeStyles.xaml" /> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </Application.Resources>
然后我又读了一些你需要在样式文件中包含画笔的内容,所以在CustomThemeStyles.xaml我有这个.
http://www.windowsphonegeek.com/articles/Creating-WP7-Custom-Theme—Complex-Theme
<ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="CustomThemeResources.xaml" /> </ResourceDictionary.MergedDictionaries>
它不起作用……所以我下载了示例应用程序,果然,每个想要改变一些颜色的页面,比如背景颜色,都会将它设置在它最外面的组件上.
<Grid Background="{StaticResource PhoneBackgroundBrush}"> ... </Grid>
解决方法
隐式样式是Silverlight 4(和WPF)的一项功能:Windows Phone 7基于Silverlight 3(添加了一些Silverlight 4功能).由于Silverlight 3中没有隐式样式,这意味着在Windows Phone 7中也无法使用它们.
现在你可以:
>仅覆盖默认的画笔/颜色资源,如您指出的第一篇文章中所述.请注意,所有WP7控件都将更改其颜色.另请注意,由于某种原因,默认背景保持不变.这是当前版本的WP7的已知问题,可能将在“芒果”更新中修复.
>如果您想要任何新的Style / ControlTemplate,您必须使用您指出的第二篇文章中提到的“x:Key”/ {StaticResource …}方法.
最后,正如Derek Lakin先前提到的:希望这个错误将在芒果更新中得到修复!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。