To reproduce:
1. Add a RadMenu with one item which has one child item.
2. Click on "radMenuItem1" then will appear "radMenuItem2 " . - Keep ("radMenuItem2") open and do not click on it -
3. Go out of the form and click on empty area .
4. Return to the menu and just move mouse over the "radMenuItem1" and it will appear "radMenuItem2" and also move the mouse over the "radMenuItem2" and keep it open . ("do not click on menus")
5. Go out of the form and click the Show Desktop button on the bottom right of the screen
6. Now you can see the problem , the menu has not closed
Workaround:
override the WndProc method in your Form with the following:
protected override void WndProc(ref Message m)
{
if (m.Msg == NativeMethods.WM_SIZE && (int)m.LParam == 0 && (int)m.WParam == 1)
{
PopupManager.Default.CloseAll(RadPopupCloseReason.AppFocusChange);
}
base.WndProc(ref m);
}
if the above does not work, you can try the following:
private void Form1_Deactivate(object sender, EventArgs e)
{
PopupManager.Default.CloseAll(RadPopupCloseReason.AppFocusChange);
}