2016-10-31 4 views
-3

플라이 아웃을 클릭하거나 윈도우의 다른면에서 플라이 아웃을 닫으려는 경우 ExternalCloseButton=Left 속성을 사용합니다. 괜찮아? 속성 AutoCloseEnabled을 제거하려고했지만 결과를 가져올 수 없습니다.플라이 아웃 - WPF (mahApps)

속성이 EnabledAutoClose 인 플라이 아웃을 사용하면 닫을 때 포커스가 컨트롤에서 손실됩니다.

이 문제를 해결하는 데 도움이 될 수 있습니까?

<mahApps:MetroWindow.Flyouts> 
    <mahApps:FlyoutsControl> 
     <mahApps:Flyout Position="Bottom" 
         AutoCloseInterval="3000" 
         IsOpen="{Binding IsOpen}" 
         IsAutoCloseEnabled="True" 
         ExternalCloseButton="Left"> 
     </mahApps:Flyout> 
    </mahApps:FlyoutsControl> 
</mahApps:MetroWindow.Flyouts> 
+2

google translate still sucks :( –

답변

1

IsPinned="False"으로 설정하면 Flyout은 왼쪽 마우스 클릭으로 플라이 아웃 외부에서 닫힙니다.

<Controls:Flyout Height="75" 
       CloseButtonVisibility="Collapsed" 
       IsPinned="False" 
       Position="Bottom" 
       TitleVisibility="Collapsed"> 
    <TextBlock VerticalAlignment="Center" Text="This is an AppBar" /> 
</Controls:Flyout> 

샘플은 기본 데모에서 제공됩니다. 희망이 도움이됩니다.

+0

Exellent! Thx !!!! – avechuche

0

당신은 MainWindow를의 PreviewMouseLeftButtonUp를 사용하거나 어떤보기하면 플라이 아웃을 포함하고 false로 ISOPEN을 설정할 수 있습니다. 사용자가 플라이 아웃 외부를 클릭 할 때만 닫으려면 플라이 아웃의 isMouseOver 속성을 사용하여 확인할 수 있습니다.

관련 문제