有点卡住了,需要一些帮助。实现方法:无论何时在StackPanel之外单击,它的可见性都应该变为隐藏。
非常简单的一个,我写了下一个条件:
private void pnlLeftMenu_LostFocus(object sender, RoutedEventArgs e)
{
if (pnlLeftMenu.IsFocused == false)
{
pnlLeftMenu.Visibility = Visibility.Hidden;
}
}其中pnlLeftMenu是应该触发的面板。下面是xaml片段,其中包含所描述的属性:
<StackPanel x:Name="pnlLeftMenu"
Orientation="Vertical"
Height="475"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
Margin="57,0,0,0"
Visibility="Hidden"
Background="{StaticResource BlueFadedBrush}"
IsVisibleChanged="pnlLeftMenu_IsVisibleChanged"
Focusable="True"
LostFocus="pnlLeftMenu_LostFocus" >不用担心,它已经被隐藏了--它是一个侧边菜单,只需点击按钮就可以看到。这部分工作得很好。
所以问题是:我错过了什么?因为当它看起来像这样时--在面板外单击不会产生任何反应。
https://stackoverflow.com/questions/38341065
复制相似问题