在XtraNavBar 点击某项时实现弹出快捷菜单功能,只需要稍作修改,可实现右键弹出菜单功能
结果图:
代码:
using DevExpress.XtraNavBar;
using DevExpress.XtraNavBar.ViewInfo;

构造函数#region 构造函数
public FormMain()
...{
InitializeComponent();
navBarItemQuotation.LinkClicked += new NavBarLinkEventHandler(navBarItemQuotation_LinkClicked);
}
#endregion
面板 - 报价单工作台#region 面板 - 报价单工作台
void navBarItemQuotation_LinkClicked(object sender, NavBarLinkEventArgs e)
...{
Point p = MousePosition;
//NavBarControl navBar = (sender as NavBarItem).NavBar as NavBarControl;
NavBarControl navBar = e.Link.NavBar;
FieldInfo fi = navBar.GetType().GetField("viewInfo", BindingFlags.NonPublic | BindingFlags.Instance);
NavBarViewInfo vi = fi.GetValue(navBar) as NavBarViewInfo;
//NavGroupInfoArgs gInfo = vi.Groups[navBar.Groups.IndexOf(group)] as NavGroupInfoArgs;
//return gInfo.Bounds;
NavLinkInfoArgs lInfo = vi.GetLinkInfo(e.Link) as NavLinkInfoArgs;
Rectangle rec = lInfo.ImageRectangle;
Point popPoint = navBar.PointToScreen(new Point(rec.Left + 8, rec.Bottom - 3));
popupMenuQuotation.ShowPopup(popPoint);
}
#endregion
本文介绍如何在DevExpress XtraNavBar中实现点击某项时弹出快捷菜单的功能。通过简单的代码修改,可以实现在特定位置显示自定义的弹出菜单。此教程详细展示了如何获取点击元素的位置,并使用反射获取内部视图信息。
1891

被折叠的 条评论
为什么被折叠?



