szld 发表于 2015-8-28 15:45:00

c1GanttView1 右键功能

版主,咨询一下c1GanttView1能不能屏蔽右键功能?如下图中,客户想要在c1GanttView1里点击鼠标右键时不弹出右键的对话框功能,能否实现?

Alice 发表于 2015-8-31 18:17:00

回复 1楼szld的帖子

c1GanttView提供了两种ContextMenu:
1. GridContextMenu - Contextmenu for the C1GanttView Grid
2. ChartContextMenu - Contextmenu for the C1GanttView Grid

如果你想要将弹出的dialog禁用,可以使用如下代码在ShowDialog事件里:
Private Sub c1GanttView1_ShowDialog(sender As Object, e As C1.Win.C1GanttView.ShowDialogEventArgs)
        If e.DialogType = DialogType.TaskInfo Then
                e.Dialog = Nothing
        End If
End Sub

szld 发表于 2015-9-1 09:32:00

感谢版主的回答,能不能禁用右键或者将右键里的ContextMenu设置为不可点击(Enabled属性有没有)?

Alice 发表于 2015-9-1 10:10:00

回复 3楼szld的帖子

如2楼所说,有两种ContextMenu,有Enable属性控制是否可用。
代码参考:
this.c1GanttView1.ChartContextMenu.Enabled = false;
            this.c1GanttView1.GridContextMenu.Enabled = false;

szld 发表于 2015-9-1 12:37:00

感谢:loap1:

Alice 发表于 2015-9-1 13:47:00

回复 5楼szld的帖子

不用客气。

我是读书人 发表于 2023-7-31 13:32:10

本帖最后由 我是读书人 于 2023-7-31 13:38 编辑

试了下   c1GanttView1.GridContextMenu.Visible =false; 这样不能隐藏右键菜单,Enabled禁用是可以的,试了试可以这样隐藏掉右键菜单
private void c1GanttView1_MouseDown(object sender, MouseEventArgs e)
      {
            if (e.Button == MouseButtons.Right)
            {
               // c1GanttView1.GridContextMenu.Visible =false;
               // c1GanttView1.GridContextMenu.ShowItemToolTips = false;
                c1GanttView1.GridContextMenu.Items.Clear();
                c1GanttView1.ChartContextMenu.Items.Clear();
                //MessageBox.Show("2");
                // 用户右击了控件
                // 在此处添加您的逻辑代码
            }
      }

Richard.Ma 发表于 2023-7-31 13:53:32

帖子中原來的方法確實只是禁用菜单项而不是隐藏菜单。你把菜单项清除掉没有问题
:hjyzw:
页: [1]
查看完整版本: c1GanttView1 右键功能