我在项目的App.XAML页面中定义了以下资源字典:
<Application.Resources>
<ResourceDictionary>
<AcrylicBrush x:Key="CustomAcrylicDarkBackground"
BackgroundSource="HostBackdrop"
TintColor="#a5a4a4"
TintOpacity="0.7"
FallbackColor="Black"/>
<AcrylicBrush x:Key="CustomAcrylicDarkInApp"
BackgroundSource="Backdrop"
TintColor="Gray"
TintOpacity="0.5"
FallbackColor="Gray"/>
<AcrylicBrush x:Key="CustomAcrylicDarkButton"
BackgroundSource="Backdrop"
TintColor="DarkGray"
TintOpacity="0.8"
FallbackColor="DarkGray"/>
<SolidColorBrush x:Key="DefaultTextColour"
Color="#b880fc"
Opacity="100"/>
<ResourceDictionary.MergedDictionaries>
<XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
在将“ DefaultTextColour”读取到我主页后面的代码中时遇到问题。
我一直在尝试通过执行以下操作来读取画笔:
TransfersItem.Foreground = Application.Current.Resources["DefaultTextColour"];
TransfersItem.Foreground = (Brush)FindName("DefaultTextColour");
TransfersItem.Foreground = (Brush)Application.Current.Resources("DefaultTextColour");
到目前为止,没有一个工作。我不确定我该如何参考。
是因为我试图将其读入属性吗?
编辑:它确实说该资源不能像一种方法一样使用,但是我不确定如何解决
答案 0 :(得分:2)
TransfersItem.Foreground = Application.Current.Resources["DefaultTextColour"] as SolidColorBrush;
您需要告诉应用程序您期望什么类型的回报。