UWP NavigationView изменяет фон заголовка

#c# #xaml #uwp #winui

Вопрос:

Я использую WinUI 2.7 в UWP, и в моем XAML у меня есть этот код:

 <Grid Background="{ThemeResource AcrylicBackgroundFillColorDefaultBrush}" ColumnSpacing="10.0">

    <muxc:NavigationView
        x:Name="NavigationView"
        HorizontalContentAlignment="Left"
        IsBackButtonVisible="Collapsed"
        PaneDisplayMode="LeftMinimal"
        SelectionChanged="SelectionChanged">
        <muxc:NavigationView.MenuItems>
            <muxc:NavigationViewItem
                Content="Main Page"
                Icon="Home"
                Tag="MainPage" />
        </muxc:NavigationView.MenuItems>

        <Frame x:Name="MainFrame" Margin="0,0,0,0" />

    </muxc:NavigationView>


</Grid>
 

И на моем C# у меня есть этот код, чтобы сделать заголовок прозрачным

 public MainPage()
    {
        this.InitializeComponent();

        var coreTitleBar = CoreApplication.GetCurrentView().TitleBar; 
        coreTitleBar.ExtendViewIntoTitleBar = true;

        var view = Windows.UI.ViewManagement.ApplicationView.GetForCurrentView(); 
        view.TitleBar.ButtonBackgroundColor = Windows.UI.Colors.Transparent;
        view.TitleBar.ButtonInactiveBackgroundColor = Windows.UI.Colors.Transparent;

        
    }
 

Проблема здесь в том, что если навигационное представление включено, то заголовок и содержимое страницы имеют немного другой цвет

введите описание изображения здесь

Но если я закомментирую навигационное представление, это исправлено

введите описание изображения здесь

Единственный способ, который я нашел, чтобы изменить цвет заголовка, — это использовать правильность фона в представлении навигации, но даже установив {ThemeResource AcrylicBackgroundFillColorDefaultBrush}, я не могу заставить его иметь тот же цвет, что и остальная часть страницы

введите описание изображения здесь

Есть ли способ, чтобы у меня был точно такой же цвет фона для всего?

Ответ №1:

Пожалуйста, обратитесь к этому документу, NavigationView содержит свойство IsTitleBarAutoPaddingEnabled, вы можете установить его как false, чтобы полностью расширить NavigationView строку заголовка. Для получения более подробной информации, пожалуйста, обратитесь к этому документу.

 <muxc:NavigationView IsTitleBarAutoPaddingEnabled="False"/>