我必須在程序啓動時被倒塌WPF的菜單欄,可以通過按下F10(如Firefox)中顯示做一個WPF元素隱藏,當它失去focous
<Menu x:Name="mainMenuBar" Height="20" Width="130" HorizontalAlignment="Left" DockPanel.Dock="Top" FocusManager.LostFocus="mainMenuBar_LostFocus">
我有代碼,我雖然如果失去焦點(即用戶使用FocusManager.LostFocus
屬性單擊菜單欄和子菜單以外的某個位置),會再次崩潰。
private void showMenuBar(object sender, KeyEventArgs e)
{
if(e.SystemKey == Key.F10)
{
mainMenuBar.Visibility = Visibility.Visible;
mainMenuBar.Focus();
}
}
private void mainMenuBar_LostFocus(object sender, RoutedEventArgs e)
{
mainMenuBar.Visibility = Visibility.Collapsed;
}
當我點擊菜單欄它不會崩潰了,但是當我點擊菜單欄上它。這種行爲與我所期望的相反,有人知道爲什麼會發生這種情況嗎?
編輯:XAML代碼
<Menu x:Name="mainMenuBar" Height="20" Width="130" HorizontalAlignment="Left" DockPanel.Dock="Top">
<MenuItem Header="File">
<Separator />
<MenuItem Header="Exit" Click="menuFileExit_Click" ToolTip="Close Program" />
</MenuItem>
<MenuItem Header="Options">
<MenuItem Header="Settings" Click="menuOptionsSettings_Click" />
</MenuItem>
<MenuItem Header="Help">
<MenuItem Header="Read Me" Click="menuHelpReadMe_Click" />
<MenuItem Header="Version History" Click="menuHelpVersionHistory_Click" />
<MenuItem Header="About" Click="menuHelpAbout_Click" />
</MenuItem>
</Menu>
改爲嘗試LostKeyboardFocus。 – adminSoftDK
它似乎與我在我的問題中描述的相同問題 – MikeS159