vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Datagridview mit Contextmenü füllen 
Autor: ModeratorDaveS (Moderator)
Datum: 28.09.10 13:01

Hier sind jetzt die zwei Methoden (jetzt wird das Menü nur für die Kopfzellen gezeigt)
Mit Cell-Event:
    Private Sub DGV_CellContextMenuStripNeeded(ByVal sender As Object, ByVal e _
      As System.Windows.Forms.DataGridViewCellContextMenuStripNeededEventArgs) _
      Handles DGV.CellContextMenuStripNeeded
        If e.ColumnIndex > -1 And e.RowIndex = -1 Then
            cms.Items.Clear()
            Dim cn As String = DGV.Columns(e.ColumnIndex).Name
            Dim nmi As New ToolStripMenuItem("Delete " & cn)
            nmi.Tag = e.ColumnIndex
            AddHandler nmi.Click, AddressOf ToolStripMenuItem_Click
            cms.Items.Add(nmi)
            e.ContextMenuStrip = cms
        End If
    End Sub
Die altmodische Variante:
     Private Sub cms_Opening(ByVal sender As Object, ByVal e As _
       System.ComponentModel.CancelEventArgs) Handles cms.Opening
        Dim mp As Point = DGV.PointToClient(MousePosition)
        Dim hti As DataGridView.HitTestInfo = DGV.HitTest(mp.X, mp.Y)
        If hti.Type = DataGridViewHitTestType.ColumnHeader Then
            cms.Items.Clear()
            Dim cn As String = DGV.Columns(hti.ColumnIndex).Name
            Dim nmi As New ToolStripMenuItem("Delete " & cn)
            nmi.Tag = hti.ColumnIndex
            AddHandler nmi.Click, AddressOf ToolStripMenuItem_Click
            cms.Items.Add(nmi)
        Else
            e.Cancel = True
        End If
    End Sub
(cms ist übrigens ein ContextMenuStrip, könnte man natürlich auch dynamisch anlegen, war halt schon vorhanden).

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Datagridview mit Contextmenü füllen1.639Seo28.09.10 06:37
Re: Datagridview mit Contextmenü füllen1.125ModeratorDaveS28.09.10 09:07
Re: Datagridview mit Contextmenü füllen1.083Snoopy28.09.10 09:55
Re: Datagridview mit Contextmenü füllen1.048ModeratorDaveS28.09.10 10:08
Re: Datagridview mit Contextmenü füllen1.128ModeratorDaveS28.09.10 10:22
Re: Datagridview mit Contextmenü füllen1.327ModeratorDaveS28.09.10 13:01
Re: Datagridview mit Contextmenü füllen1.058Seo30.09.10 07:28

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel