你知道,点击RadMenuItem后,子菜单正在打开。但这对我没有效果。我想要的是,当onmouseover事件时,子菜单会自动打开。在winforms下面的代码实现了我的愿望:
private void menuStrip_MouseEnter(object sender, EventArgs e)
{
var menu = (ToolStripMenuItem)sender;
menu.ShowDropDown();
}
你能帮我吗,我在RadMenu怎么办?
编辑:我试过这样:
private void rmiAna_MouseEnter(object sender, EventArgs e)
{
var menu = (RadMenu)sender;
menu.IsSubmenuOpen = true;
}
你可以帮帮我吗?
亲切的问候。
答案 0 :(得分:0)
要显示根项的子菜单项,您可以迭代所有菜单项并订阅根项的MouseEnter事件。在处理程序中,调用以下方法:
private void radButton1_Click(object sender, EventArgs e)
{
IterateItems(radMenu1.Items);
}
void IterateItems(RadItemOwnerCollection items)
{
foreach (RadMenuItemBase item in items)
{
if (item.IsRootItem)
{
item.MouseEnter += item_MouseEnter;
}
if (item.HasChildItemsToShow)
{
IterateItems(item.Items);
}
}
}
void item_MouseEnter(object sender, EventArgs e)
{
RadMenuItem hoveredItem = (RadMenuItem)sender;
hoveredItem.DropDown.Show();
}