我的表单有一个链接标签 llInventory 和ContextMenuStrip cmsInventory 。当我在链接标签上左键单击时,contextmenustrip应该在链接标签的正下方打开。所以我编写了代码来定位contextMenuStrip,但它仍然显示在屏幕的左上角,这里是代码
private void llInventory_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
// llInventory.BackColor = Color.Blue;
//llInventory.ForeColor = Control.
Point p = new Point(this.llInventory.Location.X, this.llInventory.Location.Y + llInventory.Height);
cmsInventory.PointToScreen(p);
cmsInventory.Show();
}
}
我该如何解决这个问题?
答案 0 :(得分:1)
您应该使用此Show(Point)
方法:
cmsInventory.Show(cmsInventory.PointToScreen(p));
或者你可以使用Show(Control, Point)
重载来定位相对于指定控制位置的contextmenustrip。