WPF: Возможно ли создать Flyout на прокручиваемом окне, используя MahApps.Metro?

Метро, ​​я использовал это несколько дней назад, и теперь хочу добавить Flyout на прокручиваемое окно в нижней части, как исправить строку меню. Является ли это возможным?

Ниже приведен код XAML-страницы для генерации всплывающих окон. Для временных целей, которые я добавил сверху,

<Controls:FlyoutsControl>
            <Controls:Flyout Header="Actions" Name="TestFlyout" VerticalAlignment="Bottom" Position="Top" Width="990" Theme="Adapt">
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="20*"></ColumnDefinition>
                        <ColumnDefinition Width="20*"></ColumnDefinition>
                    </Grid.ColumnDefinitions>
                    <Button Content="Save" Width="70" Height="30" HorizontalAlignment="Left" Grid.Column="0"></Button>
                    <Button Content="Cancel" Width="70" Height="30" HorizontalAlignment="Left" Grid.Column="1"></Button>
                </Grid>
            </Controls:Flyout>
        </Controls:FlyoutsControl>

1 ответ

Может быть, вы забыли поставить всплывающую подсказку. И вы должны использовать Position="Bottom" не VerticalAlignment="Bottom",

<Grid>
    <ScrollViewer Name="scrlMain"
                    CanContentScroll="True"
                    HorizontalScrollBarVisibility="Auto"
                    VerticalScrollBarVisibility="Auto"
                    VerticalAlignment="Stretch">

        <TextBlock Text="Test"></TextBlock>

    </ScrollViewer>

    <Controls:Flyout Header="Actions"
                        Name="TestFlyout"
                        IsOpen="True"
                        Position="Bottom"
                        Width="990"
                        Theme="Adapt">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="20*"></ColumnDefinition>
                <ColumnDefinition Width="20*"></ColumnDefinition>
            </Grid.ColumnDefinitions>
            <Button Content="Save"
                    Width="70"
                    Height="30"
                    HorizontalAlignment="Left"
                    Grid.Column="0"></Button>
            <Button Content="Cancel"
                    Width="70"
                    Height="30"
                    HorizontalAlignment="Left"
                    Grid.Column="1"></Button>
        </Grid>
    </Controls:Flyout>

</Grid>

Надеюсь это поможет.

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