右键点击的时候是在左侧弹出的,怎么改成在右侧弹出呢?
不好截图,右键点下QQ就明白了.麻烦高手指点下.notifyIconContextMenuShip右键

解决方案 »

  1.   

    我绑定的ContextMenuShip宽度很小,只有一个MenuItem,只有"退出"两字,明显没有QQ和其他程序的宽.
    但是我把它从右边移动到最左边,右键点击的时候还是从左侧弹出,
      

  2.   

    自己写个事件,不要用notifyIcon的ContextMenuShip属性来绑定ContextMenuShip控件,鼠标点击击时,得到鼠标的坐标,然后再SHow ContextMenuShip控件并指定它的坐标,是左是右你自己算出它的坐标值就可以了
      

  3.   

    默认的都是在右侧吧 怎么会使左侧呢 实在不行就不绑定了private void grid_Ini_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
            {
                if (e.Button == MouseButtons.Right)
                {
                    if (e.RowIndex >= 0)
                    {
                        this.menu_PopupMenu1.Show(MousePosition.X, MousePosition.Y);
                    }
                }
            }
     位置自己设定到自己满意为止
      

  4.   

    谢谢回复,我写在mousedown事件上怎么弹出位置都在地址栏上边呢?而不是鼠标位置.
    小弟愚钝,望指教.
      

  5.   

    用你楼下的方法试了下,弹出位置在地址栏上方,而不是鼠标位置.
    notifyIcon绑定ContextMenuShip倒是显示在鼠标位置,就是只在左侧弹出.
      

  6.   

    谢谢回复,我写在mousedown事件上怎么弹出位置都在地址栏上边呢?而不是鼠标位置.
    小弟愚钝,望指教.
    说了 你可以自己挑 如果 说 前面 绑定位置就不对了,所以现在直接这样写 位置也一定达不到你的要求的。因为2种写法是一样的。  MousePosition.X, MousePosition.Y 你可以自己加减坐标,达到自己想要的位置。 这个是可以不去考虑 你为什么一开始坐标偏离的方法。
    属于比较懒的。 要调查你原来偏离的原因,那就要 你自己慢慢调了。
    不过我想 可能是你 坐标相对画面 或者 相对用户 而引起的 误差。 不过上面的那个方法 可以完全无视原因。 就这么做着也就可以了