Я не могу выровнять по левому краю содержимое Flyout
.
Похоже, что Windows автоматически выравнивает всплывающее меню, отображаемое в правой части окна. Я попытался установить свойство HorizontalAlignment
дочерних элементов, задать свойство Flyout.FlyoutPresenterStyle
HorizontalContentAlignment
и другие свойства HorizontalContentAlignment
, но безуспешно.
<StackPanel Orientation="Horizontal"
FlowDirection="RightToLeft">
<!-- Settings menu -->
<Button.Flyout>
<Flyout>
<Flyout.FlyoutPresenterStyle>
<Style TargetType="FlyoutPresenter">
<Setter Property="ScrollViewer.HorizontalScrollMode" Value="Disabled"/>
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
<Setter Property="HorizontalContentAlignment" Value="Left"/><!-- No -->
</Style>
</Flyout.FlyoutPresenterStyle>
<StackPanel HorizontalAlignment="Left"><!-- No -->
<TextBlock HorizontalAlignment="Left" HorizontalTextAlignment="Left">Settings</TextBlock><!-- No -->
…
</Button.Flyout>
</StackPanel>
Я ожидаю, что содержимое выпадающего меню выровняется по левому краю, но оно останется справа.