找出 Windows Phone 中系统定义样式的内部结构
Posted
技术标签:
【中文标题】找出 Windows Phone 中系统定义样式的内部结构【英文标题】:Find out internals of a system-defined style in Windows Phone 【发布时间】:2011-12-21 14:47:27 【问题描述】:每当我将样式设置为 TextBlock
时,我都会定义在样式中定义的某个 FontFamily 和 FontSize。
我将设置TextBox
的样式,使其看起来与TextBlock
完全相同,但周围有边框。
我将Style="StaticResource PhoneTextLargeStyle"
应用到我的文本框。在 SilverlightSpy 中,我看到它将 FontSize 设置为 32 pt。但实际上它很可能在PhoneTextLargeStyle
中使用<Setter Property="FontFamily" Value="StaticResource PhoneFontFamilyNormal"/>
之类的东西。
如何在预定义的 Windows Phone 样式中找到 setter 的细分?
是否有一种更简单的方法可以调整TextBox
使其看起来与TextBlock
完全相同,而无需为前者定义自定义样式?
【问题讨论】:
【参考方案1】:您可以在C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Design\System.Windows.xaml
中找到所有默认样式
系统范围的文本样式位于 Design\ThemeResources.xaml
【讨论】:
【参考方案2】:如何在预定义的 Windows Phone 样式中找到 setter 的细分?
您可以使用 Expression Blend 提取模板。当您选择定义自定义样式时,它会自动完成。
【讨论】:
谢谢,但我需要获取像 PhoneTextLargeStyle 这样的样式的内容,而不是控件的样式。 你可以在 MSDN 上找到它的“内容”,msdn.microsoft.com/en-us/library/ff769552(v=vs.92).aspx,无论如何,我以为你的意思是 TextBlock 控件的样式,而不是 Text 样式。以上是关于找出 Windows Phone 中系统定义样式的内部结构的主要内容,如果未能解决你的问题,请参考以下文章
Windows phone silverlight one 主题
如何在 Windows Phone 8.1 / Windows 10 上创建自定义 VirtualizingPanel?