Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di xonica
    Registrato dal
    Oct 2003
    Messaggi
    143

    [VB.NET]Aggiungere evento a contextmenu

    ho in un form un bottone al quale ho assegnato in fase di progettazione un contextmenu vuoto.

    quando carico il form creo da codice le voci e le sottovoci del contextmenu (quattro sottocategorie)

    es:
    codice:
     - macro 1
       * descrizione 1
        + caratteristica 1
         # dettaglio 1
         # dettaglio 2  
         # dettaglio 3
     macro 2
     macro 3
    avrei bisogno di assegnare da codice solo all'ultima sottocategoria l'evento click!!!!

    come faccio????
    inoltre: è possibile assegnare ad una voce un Tag in modo che quando ci clicco mi restituisce il tag????


    vi posto un po di codice
    codice:
    Private Sub LoadMenu()
            Dim mnItem As System.Windows.Forms.MenuItem
            Dim mnSubItem As System.Windows.Forms.MenuItem
            Dim mnDettItem As System.Windows.Forms.MenuItem
            Dim mnDettSubItem As System.Windows.Forms.MenuItem
            mnItem = New System.Windows.Forms.MenuItem
            With mnItem
                .Text = "Macro"
                mnSubItem = New System.Windows.Forms.MenuItem
                With mnSubItem
                    .Text = "Descrizione"
                    mnDettItem = New System.Windows.Forms.MenuItem
                    With mnDettItem
                        .Text = "Caratteristica"
                        mnDettSubItem = New System.Windows.Forms.MenuItem
                        With mnDettSubItem
                            .Text = "Dettaglio"
                        End With
                        '  dovrei aggiungere a mnDettSubItem l'evento click
                        mnDettItem.MenuItems.Add(mnDettSubItem)
                    End With
                    mnSubItem.MenuItems.Add(mnDettItem)
                End With
                mnItem.MenuItems.Add(mnSubItem)
            End With
    
            ' mnDettagli è il controllo contextmenu appoggiato sul form
            mnDettagli.MenuItems.Add(mnItem)
        End Sub

  2. #2
    Utente di HTML.it L'avatar di xonica
    Registrato dal
    Oct 2003
    Messaggi
    143
    la necessità e praticamente quella di capire quando clicco su un Dettaglio che rami ho preventivamente selezionato.

    l'ideale sarebbe inserire un campo tag oltre a Text nel MenuItem che quando clicco possa essere restituito



    il bello è che l'evento click non mi restituisce il menuitem cliccato.
    bisognerebbe farne uno ma non so come farlo!

  3. #3
    Utente di HTML.it L'avatar di xonica
    Registrato dal
    Oct 2003
    Messaggi
    143
    Se riusciste a darmi una dritta ne sarei veramente tanto felice....

    vi faccio una breve panoramica per farvi capire come dovrebbe funzionare il mio ContextMenu:
    (come potete ben notare ho inserito nell'immagine allegata due splash screen del contextmenu)

    tutte le voci che vedete sono ricavate da un database (ID + Caption => 1 Occhiali, 1 Sole, 2 Lenti, 3 Donna, etc.). Le voci del context menu vengono caricate quando si avvia il form attingendo dal database. Queste voci in futuro diventeranno sicuramente maggiori.

    ho bisogno praticamente che l'utente nel momento che clicca su Uomo (1° caso) o su Plastica (2° caso) mi venga restituito il valore indicato dalla scritta; quindi se dovesse cliccare su voci dei menu precedenti (ad esempio click su Vista o su Cinturino) non deve succedere niente.

    per fare questo ho innanzitutto creato un controllo utente basato su System.Windows.Forms.MenuItem aggiungendo la proprietà Tag

    codice:
    Dim vTag As String
        Public Property Tag() As String
            Get
                Return vTag
            End Get
            Set(ByVal Value As String)
                vTag = Value
            End Set
        End Property
    voglio capire come posso riprendermi il valore contenuto in Tag (che da codice posso inserire direttamente all'ultima voce nel formato "1,1,1,2") nel momento del click.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.