2015-06-04 9 views
15

Jak mogę pokazać/ukryć sterowanie MahApps Flyout? Teraz mam:Pokaż/ukryj Mahapps Sterowanie wysuwem

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

Jest otwarty, ale gdy kliknę przycisk ze strzałką, nie mogę go ponownie wyświetlić.

Odpowiedz

35

można po prostu użyć czegoś takiego:

yourMahAppFlyout.IsOpen = true; 

Ponadto można powiązać wysuwanym widoczność do WindowCommand (LeftWindowCommand/RightWindowCommand), więc przy każdym zamknięciu wysuwanym można ponownie otworzyć za pomocą ToggleButton (na przykład) z górnej części okna.

<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> 
+2

Zastosowano drugą sugestię, działa idealnie – Sybren

+0

Tak, używając drugiej sugestii, działa! – BENN1TH

+0

i nawet pierwsze prace za pośrednictwem C# – BENN1TH