无法从 XAML 找到 C# 中的 JumpListItemBackgroundConverter



我想动态更改我的长名单选择器的跳转列表的颜色。我在 xaml 中定义了 JumpListBackgroundConverter,如下所示

资源
<phone:PhoneApplicationPage.Resources>
<phone:JumpListItemBackgroundConverter x:Name="BackgroundConvert" x:Key="BackgroundConverter" Enabled="#FFA20025"/>

在 C# 中,组件初始化后 BackgroundConvert 返回 null

    public MainPage()
    {
        InitializeComponent();
        this.BackgroundConvert.Enabled = new SolidColorBrush(ThemeGradient.Color);

我将启用的值更改为新画笔,并计划在整个代码中更改它。由于某种原因,它返回 null 并崩溃。

在初始化组件中,我想 FindName 返回空,但我无法弄清楚为什么

     this.BackgroundConvert = ((Microsoft.Phone.Controls.JumpListItemBackgroundConverter)(this.FindName("BackgroundConvert")));

顺便说一句,这是针对Windows Phone 8的!

只需要

在资源中使用x:key,就不需要用x:Name="BackgroundConvert"。

<phone:JumpListItemBackgroundConverter x:Key="BackgroundConverter" Enabled="#FFA20025"/>

然后,您可以使用它在代码隐藏中的x:Key="BackgroundConverter"值从 Resources 访问它。资源是字典。

var converter = (Microsoft.Phone.Controls.JumpListItemBackgroundConverter)this.Resources["BackgroundConverter"];

相关内容

  • 没有找到相关文章

最新更新