Индикатор выбора вида навигации UWP

#uwp-xaml

#uwp-xaml

Вопрос:

У меня есть приложение UWP с пользовательским стилем для индикатора выбора:

 <SolidColorBrush x:Key="NavigationViewSelectionIndicatorForeground"
                 Color="{StaticResource FoxOrange}" />
 

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

Теперь я хотел переключиться на версию в пакете Microsoft.UI.Xaml. Это работает до сих пор, если только индикатор sselection больше не оранжевый, а снова имеет цвет акцента по умолчанию и намного меньше.

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

Как я могу это исправить?

Ответ №1:

Для цвета. Вы все еще можете определить это на своей странице следующим образом:

  <Page.Resources>
    <ResourceDictionary>
        <ResourceDictionary.ThemeDictionaries>
            <ResourceDictionary x:Key="Light">
                <SolidColorBrush x:Key="NavigationViewSelectionIndicatorForeground" Color="Yellow"/>
            </ResourceDictionary>
        </ResourceDictionary.ThemeDictionaries>
    </ResourceDictionary>
</Page.Resources>
 

Но я не могу найти способ настроить ширину этого SelectionIndicator, насколько я понимаю, это прямоугольник, определенный в NavigationViewItemPresenter.

Комментарии:

1. Я попытался добавить свой стиль в проект, созданный с помощью App Studio, и это сработало, как ожидалось. Поэтому я предполагаю, что с моим проектом что-то не так. Я просто не могу понять, что..

2. Я только что узнал об этом.. Версия 2.0.181018004, похоже, работает так, как ожидалось. Однако с версией 2.1.190405004 происходит описанное выше поведение..

3. Хорошо, я провел дальнейшее расследование. Кажется, в последней версии (2.1.190405004) произошло изменение ширины, что меня немного смущает ^^ Также у меня был свой стиль в собственном ResourceDictionary, который был загружен. Это больше не работало, когда я переключился на библиотеку вместо использования встроенной. Когда я перенес стиль на страницу. Ресурс сработал. Спасибо!