Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [C#] tag per i bottoni

    salve a tutti, dovrei gestire la digitazione di quasi 40 bottoni su di un pannello dove a seconda della digitazione devo applicare un filtro ad una datatable (ma non è questo l'importante) quindi quello che vi chiedo è come posso organizzare la digitazione attraverso i tag; cioè invece di fare del codice button1_click, button2_click ecc.... gestire attraverso i tag tutti questi bottoni, se mi fate vedere un po di sintassi vi ringrazio, ciao.
    Se ti dicono siediti e stai zitto...tu alzati e muori combattendo!!!

  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Scusa, ma non si capisce cosa intendi.
    Non sai gestire la proprietà Tag?
    Altrimenti spiegati meglio...

    Secondo me, se ho intuito quello che ti serve, potrebb esserti utile un gestore unico di tutti gli eventi Click di tutti i pulsanti (i bottoni sono quegli degli abiti )

    Se così, o lo fai da codice (AddHandler) oppure modifichi la firma dell'evento togliendo l'Handles...

  3. #3
    si scusa mi ero svegliato da poco quando ho fatto il post cmq si vorrei un gestore unico per tutti gli eventi click di tutti i pulsanti che mi interessano...so che dovrei impostare un offset diverso per ogni valore di tag che ho in entrata alla digitazione; ma non conosco la sintassi per fare questa cosa.
    Se ti dicono siediti e stai zitto...tu alzati e muori combattendo!!!

  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Allora non c'entra niente indicare un offset (???) nella proprietà Tag.

    Quindi, come ti dicevo, puoi semplicemente creare un gestore di eventi con l'istruzione AddHandler.
    Oppure sfruttare la clausola Handles per associare i controlli ad un'unico evento Click.

    Vedi la guida per tutti i dettagli.
    http://msdn.microsoft.com/it-it/libr...(v=vs.71).aspx
    oppure
    http://totemslair.org/guide/viewchap...guida=vb&id=53

    Prova e se hai difficoltà chiedi allegando il codice usato, indicando dove crea problemi.


  5. #5
    ti ringrazio per i link, non trovavo nulla...ora provo e ti faccio sapere...
    Se ti dicono siediti e stai zitto...tu alzati e muori combattendo!!!

  6. #6
    allora da quello che ho capito in vb la storia è questa:

    codice:
    Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click, Button4.Click, Button5.Click, Button2.Click
    
    Dim bt as button = sender
    e in base al tag del button si gestisce l'azione da fare, però questo su C#, non è proprio così facile e si devono gestire tutti quanti i controlli per ogni button; mi paredi aver capito questo...
    Se ti dicono siediti e stai zitto...tu alzati e muori combattendo!!!

  7. #7
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    764
    codice:
    private button_click(object ender, EventArgs e)
    {
        if ((Button)sender).Tag == "1";
            //codice per bottone 1
        if ((Button)sender).Tag == "2";
            //codice per bottone 2
        //ecc.. per ogni tag
    
    }
    In Onload dopo aver inizializzato i componenti

    codice:
       Button1.Click += button_click;
       Button2.Click += button_click;
       //ecc.. per ogni bottone

  8. #8
    Originariamente inviato da rsdpzed
    [CODE]
    In Onload dopo aver inizializzato i componenti

    codice:
       Button1.Click += button_click;
       Button2.Click += button_click;
       //ecc.. per ogni bottone
    ti ringrazio per il suggerimento, ma qui praticamente associo al click di ogni mio button lo stesso evento button_click giusto? ad esempio se i miei button invece di chiamarsi Button1, Button2, Button3 ecc...si chiamano Pippo, Pluto, Paperino
    allora è cosi?

    codice:
    Pippo.Click += button_click;
    Pluto.Click += button_click;
    Paperino.Click += button_click;
    e lo devo fare prima di definire l'evento click button_click generale, giusto?
    Se ti dicono siediti e stai zitto...tu alzati e muori combattendo!!!

  9. #9
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    764
    1- si

    2 - L'veneto è una funzione private che vive nella classe della finestra può stare dove vuole. L'importante è che quelle assegnazioni (Pippo.Click += ....) le fai nel Load subito dopo l'inizializazione.

  10. #10
    alla fine le assegnazioni le ho fatte in un metodo a parte che eseguo quando richiamo l'apertura del pannello, che contiene tutti quei button.
    ciao e grazie di nuovo.
    Se ti dicono siediti e stai zitto...tu alzati e muori combattendo!!!

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.