2012-11-16 2 views
0

У меня есть DataGridView с dgv1.CellClick.Отключить щелчок правой кнопкой мыши для ContextMenuStrip в DataGridView

Отображается контекстное меню с щелчком ячейки левой кнопкой мыши. Когда это происходит, он также устанавливает положение текущей ячейки, но контекстный просмотр также появляется, когда я нажимаю кнопку «ВПРАВО». Я хочу отключить или скрыть контекстное меню при нажатии правой кнопки мыши.

Я попытался:

private void dgv1_MouseClick(object sender, MouseEventArgs e) 
    { 
     if (e.Button == System.Windows.Forms.MouseButtons.Right) 
      cms1.Hide(); 
    } 

и это не сработало.

У кого-нибудь есть совет?

ответ

2
private MouseButtons e_Button = new MouseButtons(); 
    private void dgv1_MouseDown(object sender, MouseEventArgs e) 
    { 
     e_Button = e.Button; 
    } 

    private void cms1_Opening(object sender, CancelEventArgs e) 
    { 
     if (e_Button == System.Windows.Forms.MouseButtons.Right) 
      e.Cancel = true; 
    } 
0

Может быть с этим:

private void dgv1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { 
     if ((e.Button != Windows.Forms.MouseButtons.Right)) { 
      cms1.Show(datagridview, e.Location); 
      } 
     } 
    } 
+0

Это делает его показать с обеих кнопок спрессованных в любом месте в сетке. Я хочу, чтобы он отображался в DataGridViewButtonColumn, когда нажата левая кнопка мыши. – Scott

+0

Может, мне нужен новый подход ..... Любые предложения? – Scott

0

Попробуйте

private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) 
{ 
    e.Control.ContextMenu = new ContextMenu(); 
} 
+0

Возможно, я должен был упомянуть, что это DataGridViewButtonColumn – Scott

+0

, который вы хотите отключить в контекстном меню на datagridviewbutton – Nag

0
private void dataGridViewExample_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) 
{ 
    e.Control.ContextMenu = new ContextMenu(); 
} 
+0

Я ценю быстрый ответ, но это не повлияло. – Scott

+1

Вы пробовали это на EditingControlShowing DataGridView событие? – Obama

+0

@Scott вы уверены, что свойство ContextMenuStrip DataGridView не является ничем? – Obama

Смежные вопросы