web-dev-qa-db-ja.com

Mahappsフライアウトコントロールの表示/非表示

MahApps Flyoutコントロールを表示/非表示にするにはどうすればよいですか?今私が持っています:

<controls:FlyoutsControl>
    <controls:Flyout Header="Flyout" Position="Right" Width="200" IsOpen="True">
        <TextBlock FontSize="24">Hello World</TextBlock>
    </controls:Flyout>
</controls:FlyoutsControl>

そして、それは開いていますが、矢印の付いたボタンをクリックすると、再び表示することはできません。

25
Cieja

次のようなものを単純に使用できます。

yourMahAppFlyout.IsOpen = true;

また、フライアウトの可視性をWindowCommandLeftWindowCommand/RightWindowCommand)にバインドできるため、フライアウトを閉じるたびにToggleButtonを使用して再度開くことができます(たとえば、 )ウィンドウの上部から。

<Controls:MetroWindow.Flyouts>
    <Controls:FlyoutsControl>
        <Controls:Flyout x:Name="yourMahAppFlyout"/>
    </Controls:FlyoutsControl>
</Controls:MetroWindow.Flyouts>

<Controls:MetroWindow.RightWindowCommands>
    <Controls:WindowCommands>
        <ToggleButton Content="Layers" 
        IsChecked="{Binding ElementName=yourMahAppFlyout, Path=IsOpen}" Cursor="Hand"/>               
    </Controls:WindowCommands>
</Controls:MetroWindow.RightWindowCommands>
46