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

    [C#] Scatenare evento

    Ciao, ho necessità di scatenare un evento associato ad un altro controllo, mi spiego:
    ho un Button, nell'evento click del Button nel codice associato ad un certo punto devo richiamare il codice assiciato all'evento di un altro controllo?
    Come faccio?
    Grazie

  2. #2
    Devi richiamare il suo gestore evento. Non puoi scatenare l'evento vero e proprio, perché gli eventi possono essere scatenati solo dall'interno delle classi che li definiscono.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Grazie, potresti gentilmente farmi un esempio con codice?

  4. #4
    Che bisogno di esempi c'è? Richiami l'altro gestore di eventi come fosse una normale procedura:
    codice:
    private void btnUno_Click(object sender, EventArgs ev)
    {
        btnDue_Click(btnDue, new EventArgs());
    }
    private void btnDue_Click(object sender, EventArgs ev)
    {
        //Fa qualcosa
    }
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    La mia situazione è questa:

    private void pictureBox1_Paint(object sender, PaintEventArgs e)
    {
    System.Drawing.Graphics formGraphics = e.Graphics;

    Point[] myPointArray =
    {
    new Point(200, 40),
    new Point(300, 40),
    new Point(320, 380),
    new Point(250, 460),
    new Point(180, 380)
    };

    SolidBrush shadowBrush = new SolidBrush(colorDialog1.Color);
    formGraphics.FillPolygon(shadowBrush, myPointArray);
    shadowBrush.Dispose();
    }

    private void btnSfondo_Click(object sender, EventArgs e)
    {
    colorDialog1.ShowDialog();
    pictureBox1.BackColor = colorDialog1.Color;
    // qui devo richiamare l'evento pictureBox1_Paint
    pictureBox1_Paint(pictureBox1, QUI COSA DEVO METTERE?);

    }

  6. #6
    codice:
    Graphics tgr=pictureBox1.CreateGraphics();
    pictureBox1_Paint(pictureBox1, new PaintEventArgs(tgr,pictureBox1.ClientRectangle);
    tgr.Dispose();
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Grazie mille, putroppo mi sa che la mia idea era sbagliata, come hai visto creo un poligono (all'interno della picturebox) a cui ho associato del codice per cambiare il colore di tale poligono, poi ho creato un pulsante per cambiare lo sfondo, ma poichè quando viene cambiato il colore di sfondo esso "sovrascrive" il poligono, avevo pensato di ridisegnare il poligono dopo aver cambiato lo sfondo... ma non funziona...

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.