如何更改ContentDialog uwp的背景覆盖

时间:2016-04-06 12:37:00

标签: win-universal-app uwp-xaml

我正在使用VS2015开发UWP Win10 App。我正在使用ContenDialog来显示模态窗口/弹出窗口。我需要更改ContentDialog的背景叠加颜色。这该怎么做。即使在内部风格中也没有选项/属性。

我需要将Overlay White Dim颜色更改为其他颜色,如Blackish overlay / dim color等...

见图。

enter image description here

2 个答案:

答案 0 :(得分:1)

我认为您需要自定义使用控件才能更好地控制背景。默认的ContenDialog提供了非常简单的骨骼设置,并且对按钮/内容的数量有限制。

答案 1 :(得分:0)

要设置的关键资源是SystemControlPageBackgroundMediumAltMediumBrush

我使用以下主题定义来定位应用中的所有ContentDialogs:

<!--  override the Dialog Background  -->
<ResourceDictionary.ThemeDictionaries>
    <ResourceDictionary x:Key="Default">
        <SolidColorBrush x:Key="ContentDialogDimmingThemeBrush" Color="#99FFFFFF" />
        <SolidColorBrush x:Key="SystemControlPageBackgroundMediumAltMediumBrush" Color="#99000000" />
        <StaticResource x:Key="ContentDialogLightDismissOverlayBackground" ResourceKey="SystemControlPageBackgroundMediumAltMediumBrush" />
    </ResourceDictionary>
    <ResourceDictionary x:Key="Dark">
        <SolidColorBrush x:Key="ContentDialogDimmingThemeBrush" Color="{ThemeResource SystemColorHighlightColor}" />
        <SolidColorBrush x:Key="SystemControlPageBackgroundMediumAltMediumBrush" Color="#99000000" />
        <StaticResource x:Key="ContentDialogLightDismissOverlayBackground" ResourceKey="SystemControlPageBackgroundMediumAltMediumBrush" />
    </ResourceDictionary>
</ResourceDictionary.ThemeDictionaries>