我在app.xaml中定义了一个自定义SolidColorBrush
<Application.Resources>
<SolidColorBrush x:Key="App_DarkForeground" Color="White"/>
</Application.Resources>
在我的page1.xaml中,我使用上面的画笔
<TextBlock x:Name="lblTileColor" Text="user color:" Foreground="{StaticResource App_DarkForeground}"/>
我正在尝试根据c#中的用户事件在运行时更改此画笔的颜色。
我正在使用下面的部分来设置颜色,但是我遇到了这个例外。
Application.Current.Resources["App_DarkForeground"] = new SolidColorBrush(Color.FromArgb(0xff, 255, 122, 255));
以下是例外情况:
An exception of type 'System.NotImplementedException' occurred in System.Windows.ni.dll but was not handled in user code
我跟着这个question,但没有运气。
答案 0 :(得分:1)
你联系的问题是谈论它在WPF中的完成情况,而不是windows手机。显然,对于Windows手机,您无法设置资源字典值。
为什么不在代码中分配前景属性?
lblTileColor.Foreground = new SolidColorBrush(Color.FromArgb(0xff, 255, 122, 255));
或者,如果您使用MVVM,您可以绑定它:
<TextBlock x:Name="lblTileColor" Text="user color:" Foreground="{Binding ForegroundProperty"} />