C# DatagridView und ContextMenu

Ich habe ein datagridview, wo ich zeigen Informationen über Produkte. Ich möchte zum binden ein contextmenu, wenn der Benutzer selektiert eine Zelle und dann mit der rechten Mausklicks auf die entsprechende Zelle. Ich habe noch eine contextmenu-und dass man gebunden ist den Spalten des datagridview. Wenn ein Benutzer mit der rechten klickt auf eine Spalte der contextmenu-shows.

Habe ich versucht, aber es funktioniert nicht. Zeigt das Kontextmenü, wenn der Benutzer klickt auf eine Zelle, aber das contextmenu, die gebunden ist, auf den Spaltenkopf funktioniert nicht.

   private void GridView1_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e)
    {
        if (e.Button == MouseButtons.Right)
        {
            productContextMenu.Show(GridView1, e.Location);
        }

    }

Wie kann ich es so machen, dass wenn der Benutzer klickt auf ein datagridview zeigt sich?

Vielen danke im Voraus.

BEARBEITEN

Thnx für die Antworten. Ich löste das problem so:

    private void GridView1_MouseUp(object sender, MouseEventArgs e)
    {
        DataGridView.HitTestInfo hitTestInfo;
        if (e.Button == MouseButtons.Right)
        {
            hitTestInfo = GridView1.HitTest(e.X, e.Y);
            if (hitTestInfo.Type == DataGridViewHitTestType.Cell)
            {
                productContextMenu.Show(GridView1, e.Location);
            }

        }
    }

Sowohl die Kontextmenüs zeigt. Wenn ich auf die Spalte klicken, das Kontext-Menü erscheint, und wenn ich auf eine Zelle, die contextmenu-shows.

  • Vielen Dank für das wissen, dass Sie bekam eine Antwort 🙂
  • Warum nicht markieren Sie als Antwort dann, wenn du die Lösung mit seiner Idee
  • Nur wollte. Thnx nochmal!
InformationsquelleAutor Erika | 2011-05-04
Schreibe einen Kommentar