Xaml SystemAccentColor+;转换器

Xaml SystemAccentColor+;转换器,xaml,uwp,windows-10-universal,Xaml,Uwp,Windows 10 Universal,[UWP]我从SystemAccentColor创建了一个SolidColorBrush资源,我尝试添加一个转换器来减轻颜色,但它只能在运行时工作。。。我看到颜色变浅了,但如果我在设置操作系统中更改了重音颜色,它会在其他文本中更改,而我的颜色转换器无法工作。当我更改系统强调色时,是否有方法“更新”我的资源 在我的应用程序中: <Grid Background="{ThemeResource AuraAccent}"/> <Grid Background="{ThemeResou

[UWP]我从SystemAccentColor创建了一个SolidColorBrush资源,我尝试添加一个转换器来减轻颜色,但它只能在运行时工作。。。我看到颜色变浅了,但如果我在设置操作系统中更改了重音颜色,它会在其他文本中更改,而我的颜色转换器无法工作。当我更改系统强调色时,是否有方法“更新”我的资源

在我的应用程序中:

<Grid Background="{ThemeResource AuraAccent}"/>
<Grid Background="{ThemeResource AuraAccentLight1}"/>
<SolidColorBrush x:Key="AuraAccent" Color="{ThemeResource SystemAccentColor}"/>
<SolidColorBrush x:Key="AuraAccentLight1" Color="{Binding Source={ThemeResource SystemAccentColor}, Converter={ThemeResource shade}, ConverterParameter=30}"/>

资源字典:

<Grid Background="{ThemeResource AuraAccent}"/>
<Grid Background="{ThemeResource AuraAccentLight1}"/>
<SolidColorBrush x:Key="AuraAccent" Color="{ThemeResource SystemAccentColor}"/>
<SolidColorBrush x:Key="AuraAccentLight1" Color="{Binding Source={ThemeResource SystemAccentColor}, Converter={ThemeResource shade}, ConverterParameter=30}"/>

AuraAccent在运行时和更改重音颜色时工作

AuraAccentLight1在运行时工作,但在更改重音颜色时不工作

实际工作原理:

我浏览了一些资源字典文件,发现字典将在应用程序最初加载时加载。将更新实际主题资源的更改,但不会更新自定义画笔(在您的情况下是1,因为它使用转换器)

这就是我所做的。我将第二个网格绑定到第一个网格,并说当第一个网格的颜色改变时,第二个网格的颜色也应该更新,而不是创建一个只有一次效果的着色颜色的ResourceDictionary

下面是我的XAML

<Grid x:Name="grid" Background="{ThemeResource AuraAccent}"/>
<Grid>
    <Grid.Background>
        <SolidColorBrush Color="{Binding Background.Color, Converter={StaticResource ColorHelper}, ElementName=grid,ConverterParameter=30}" />
    </Grid.Background>
</Grid>


让我知道这是否有帮助。

我浏览了一些资源字典文件,并注意到字典将在应用程序最初加载时加载。将更新实际主题资源的更改,但不会更新自定义画笔(在您的情况下是1,因为它使用转换器)

这就是我所做的。我将第二个网格绑定到第一个网格,并说当第一个网格的颜色改变时,第二个网格的颜色也应该更新,而不是创建一个只有一次效果的着色颜色的ResourceDictionary

下面是我的XAML

<Grid x:Name="grid" Background="{ThemeResource AuraAccent}"/>
<Grid>
    <Grid.Background>
        <SolidColorBrush Color="{Binding Background.Color, Converter={StaticResource ColorHelper}, ElementName=grid,ConverterParameter=30}" />
    </Grid.Background>
</Grid>


如果有帮助,请告诉我。

受AVK Naidu启发,我决定:

<SolidColorBrush x:Key="AuraAccentLight1" Color="{Binding Color, Source={ThemeResource AuraAccent}, Converter={ThemeResource shade}, ConverterParameter=30}"/>

谢谢大家

最终结果:
受AVK Naidu的启发,我决定:

<SolidColorBrush x:Key="AuraAccentLight1" Color="{Binding Color, Source={ThemeResource AuraAccent}, Converter={ThemeResource shade}, ConverterParameter=30}"/>

谢谢大家

最终结果:

您已经尝试过什么?如果您在问题中分享您的(相关)代码,将更容易提供有用的答案。请参阅我的链接视频以了解您如何在转换器中点亮颜色?我们能看到那个代码吗?@AVKNaidu是的,这是我的代码(第13行):你知道-也许你可以尝试在没有转换器的情况下使用它们?你已经尝试过什么?如果您在问题中分享您的(相关)代码,将更容易提供有用的答案。请参阅我的链接视频以了解您如何在转换器中点亮颜色?我们能看到那个代码吗?@AVKNaidu是的,这是我的代码(第13行):你知道-也许你可以尝试在没有转换器的情况下使用它们?很好。很高兴我能提供帮助。我建议您添加对此答案所做的end app.xaml更改,并将其标记为答案,以便对其他人有所帮助。我不能这样做。因为:“你可以在22小时内接受你自己的答案”。我是stackoverflow的新手:)不错。很高兴我能提供帮助。我建议您添加对此答案所做的end app.xaml更改,并将其标记为答案,以便对其他人有所帮助。我不能这样做。因为:“你可以在22小时内接受你自己的答案”。我是stackoverflow的新手:)