Как добавить AcrylicBrush на панель инструментов только в UWP

Как сделать нанесение акрилового материала на TitleBar только в UWP (так же, как Microsoft Edge). В сценариях типа Pivots. Вы используете расширить представление до строки заголовка. Но что, если это обычное одностраничное приложение, и вы хотите сделать строку заголовка акриловой?

1 ответ

Решение

Вы используете расширить представление до строки заголовка. Но что, если это обычное одностраничное приложение, и вы хотите сделать строку заголовка акриловой?

Ваше понимание верно. Для заголовка акриловый, он подходит только для одной страницы. Для дизайна Edge, это установлено TitleBarButtonBackgroundColor,ButtonInactiveBackgroundColor как прозрачный. И установить ExtendViewIntoTitleBar свойство true для расширения вашего контента в TitleBar, Затем сделайте акриловый элемент такой же высоты, поместите нижнюю часть.

private void ExtendAcrylicIntoTitleBar()
{
    CoreApplication.GetCurrentView().TitleBar.ExtendViewIntoTitleBar = true;
    CoreApplication.GetCurrentView().TitleBar.LayoutMetricsChanged += (s,e) => {
       Header.Height = s.Height;
   };

    ApplicationViewTitleBar titleBar = ApplicationView.GetForCurrentView().TitleBar;
    titleBar.ButtonBackgroundColor = Colors.Transparent;
    titleBar.ButtonInactiveBackgroundColor = Colors.Transparent;
}

<Rectangle Name="Header"
Stretch="UniformToFill" 
Fill="{ThemeResource SystemControlChromeHighAcrylicWindowMediumBrush}" 
VerticalAlignment="Top"/>

Другие вопросы по тегам