我需要创建一个自定义下拉菜单,该下拉菜单有一个打开它的按钮和一个显示某些内容的面板,我希望在单击它外部时关闭它,我应该使用哪种面板?我尝试了 popupmenu 但在失去焦点后无法关闭它,并尝试了 contextmenu 但单击它的内部项目时它会关闭。
任何建议都将不胜感激。
我试过这样的事情:
<Button x:Name="toggleButton"
ContextMenuService.Placement="Top" Click="ToggleButton_Click"
Margin="0" Content="+">
<Button.ContextMenu>
<ContextMenu Width="200"
HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch" >
<StackPanel>
<DataGrid >
<DataGrid.Columns>
<DataGridTextColumn/>
<DataGridTextColumn/>
</DataGrid.Columns>
</DataGrid>
<TextBlock Text="sadfasdfas" />
<TextBox Text="" Width="100"/>
</StackPanel>
</ContextMenu>
</Button.ContextMenu>
</Button>