Как закрыть всплывающее окно, когда я нажимаю вне окна в wpf в mahapps?

У меня есть всплывающее окно Flyoout и тестовое окно в моем приложении WPF. Что мне нужно, так это то, что мне нужно закрыть окно, когда я нажимаю за пределами Flyout. Я установил Panel.Zindex на видимый верх. Я пробовал код, который работает нормально. Но он не знает, щелкаю ли я внутри или вне окна. Его закрытие, когда я нажимаю внутри главного экрана.!

Вот мой код xaml:

xmlns:metro="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"

 <metro:Flyout x:Name="flyOutControl" IsOpen="False" Background="#5D7BA5"      Foreground="White"
                                  Grid.Row="0" Grid.RowSpan="4" Grid.Column="0" Grid.ColumnSpan="2" Panel.ZIndex="50"
                                  Width="400" Height="auto">


                            <TreeView x:Name="treeviewBreadcrumb" Width="350"
                                      HorizontalAlignment="Left" FontSize="20"
                                      Background="Transparent" Foreground="White"                                 
                                    VerticalAlignment="Top">

                                <TreeView.ItemContainerStyle>
                                    <Style TargetType="{x:Type TreeViewItem}">
                                        <Setter Property="IsExpanded" Value="True"/>                                            
                                        <Setter Property="Margin" Value="5"/>
                                        <Setter Property="Foreground" Value="White"/>                                            
                                    </Style>
                                </TreeView.ItemContainerStyle>                                    

                            </TreeView>

                    </metro:Flyout>

Если я нахожусь в окне тестового окна, я могу установить для свойства Isopen значение true этого всплывающего окна. как я могу закрыть это, если я нажимаю за пределами любого другого окна?

Любая помощь будет очень ценится.. Заранее спасибо..

1 ответ

Установите для свойства isPinned значение false в раскрывающемся меню следующим образом:

<metro:Flyout IsPinned="False"></metro:Flyout>
Другие вопросы по тегам