我尝试为自己的应用创建自己的设计。其中一个主要问题是,我想用自己的颜色替换强调色。
现在我可以用这个覆盖画笔:
<Color x:Key="AppAccentColor">#ff6b53</Color>
<SolidColorBrush x:Key="PhoneAccentBrush" Color="{StaticResource AppAccentColor}"/>
现在如果我将PhoneAccentBrush分配到某处,它会显示正确的颜色。但是,如果我单击TextBox,边框仍然是系统设置中设置的颜色的颜色。
我试图覆盖这些颜色,例如:
<SolidColorBrush x:Key="PhoneTextBoxEditBorderBrush"
Color="{StaticResource AppAccentColor}" />
但这似乎没有效果。
此外,我尝试创建一个新样式并复制我在系统上的8.1 \ Design [Theme] \ System.Windows.xaml文件夹中找到的样式。但是在这里他找不到位于同一文件夹中ThemeResources.xaml中的不同资源。一旦我导入它,他就不能再进行构建了。我究竟做错了什么 ? o.O
由于 NPadrutt
答案 0 :(得分:1)
在Windows Phone 8.1运行时应用程序中,还有另一种覆盖主题颜色的方法。您可以在 App.xaml 文件中执行此操作。以下是更改TextBox
突出显示的边框颜色的示例:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.ThemeDictionaries>
<ResourceDictionary x:Key="Default">
<SolidColorBrush x:Key="TextSelectionHighlightColorThemeBrush" Color="Magenta" />
</ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>
</ResourceDictionary>
</Application.Resources>
您的TextBox
将如下所示:
检查可以用这种方式覆盖的画笔的完整列表:https://msdn.microsoft.com/en-us/library/windows/apps/dn518235.aspx
正如您在我的解决方案中所看到的,我将其用于默认样式。但是您可以为 Light 和 Dark 样式提供不同的选项。