Настройка экспандера - UWP App
У меня есть приложение UWP (опубликовано в Windows/Microsoft Store), и я хочу добавить Expander, основанный на примере приложения UWP Community Toolkit, но хотел его настроить. У меня есть этот код:
<controlsToolkit:Expander x:Name="Expander1"
Margin="0,0,0,10"
Header="Details"
IsExpanded="False"
ExpandDirection="Down"
RelativePanel.AlignHorizontalCenterWithPanel="True"
RelativePanel.AlignVerticalCenterWithPanel="True"
Foreground="Gray"
BorderThickness="2">
<controlsToolkit:Expander.BorderBrush>
<SolidColorBrush Color="Gray" Opacity="0.4"/>
</controlsToolkit:Expander.BorderBrush>
<TextBlock HorizontalAlignment="Center"
TextWrapping="Wrap"
Text="Details Example"
VerticalAlignment="Center"/>
</controlsToolkit:Expander>
Я хочу, чтобы кнопка расширения имела серую рамку, но я не знаю, почему эта граница не появляется:
И когда я нажимаю на свой расширитель, я хочу, чтобы фон был серым, а не синим, но я не знаю, как мне это сделать:
2 ответа
Не похоже, что Expander поддерживает стили BorderBrush или BorderThicknes. Я подал проблему и пиар, чтобы исправить это.
Элемент управления будет учитывать свойство Background и будет применять его к заголовку и содержимому. Тем не менее, ToggleButton, используемый для Заголовка, имеет стиль, который применяет системный цвет (цвет акцента), когда он отмечен (он же расширен).
Вы можете изменить цвет заголовка, добавив ресурс в расширитель
<controls:Expander.Resources>
<SolidColorBrush x:Key="SystemControlHighlightAccentBrush" Color="Red"/>
</controls:Expander.Resources>
Или вы можете изменить стиль элемента управления, чтобы изменить стиль ToggleButton, чтобы не изменять цвет фона, когда он отмечен
Взгляните на шаблон управления экспандером, добавьте его к своим ресурсам страницы / приложения и настройте его. https://github.com/Microsoft/UWPCommunityToolkit/blob/master/Microsoft.Toolkit.Uwp.UI.Controls/Expander/Expander.xaml
Я посмотрю на проблему, с которой вы скоро столкнетесь.