浮出控件 - WPF (mahApps)
Flyout - WPF (mahApps)
我试图在单击他或 window 的另一侧时关闭弹出按钮,我使用 ExternalCloseButton=Left
属性。这个可以吗?我也尝试删除 属性 AutoCloseEnabled
,但无法得到结果。
当我将弹出窗口与 属性 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>
您可以使用 MainWindow 的 PreviewMouseLeftButtonUp 或任何包含弹出窗口的视图并将 isOpen 设置为 false。如果您只想在用户单击弹出窗口的外部时关闭它,您可以使用弹出窗口的 isMouseOver 属性 检查它。
如果您设置 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>
示例来自主要演示。希望这有帮助。
我试图在单击他或 window 的另一侧时关闭弹出按钮,我使用 ExternalCloseButton=Left
属性。这个可以吗?我也尝试删除 属性 AutoCloseEnabled
,但无法得到结果。
当我将弹出窗口与 属性 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>
您可以使用 MainWindow 的 PreviewMouseLeftButtonUp 或任何包含弹出窗口的视图并将 isOpen 设置为 false。如果您只想在用户单击弹出窗口的外部时关闭它,您可以使用弹出窗口的 isMouseOver 属性 检查它。
如果您设置 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>
示例来自主要演示。希望这有帮助。