none
PictureBox RRS feed

  • Domanda

  • Ciao a tutti.

    Nel mio programma ho alcune pictureBox che inizialmente sono vuote e che ho inserito in una list<Control> ("ctrl").

    Ad un certo punto del programma eseguo un foreach che mi scorra tutti i control presenti in "ctrl".Posto il codice e mi spiego meglio.

    foreach(Operazioni o in operazioni)
    string pr = "gif" + (count+1).ToString(); 
     foreach (Control c in ctrl)
      {
       Type ob = c.GetType();
            if (ob.FullName == "System.Windows.Forms.PictureBox")
                        {
                            prog = (System.Windows.Forms.PictureBox)c;
                            prog.Image = Properties.Resources.mozilla_giallo;
                           if(prog.Name == pr)
                          { break; }
                        }
      }
                            Object[] parametriInvio = { o.Albero, o.Nodo };
                            m.Invoke(this, parametriInvio);
                            Thread.Sleep(500);
                            MessageBox.Show("Sleep");
                            prog.Image.Dispose();
                            prog.Image = null;
                            //this.Refresh();
                            //tlp.Refresh();
                            prog.Image = Properties.Resources.v;
                            Thread.Sleep(500);
    }

    Con il foreach di cui parlavo prima cerco tutti i pictureBox  e inserisco un'immagine,poi eseguo qualche operazione e inserisco un'altra immagine al posto di quella di prima ma in realtà non viene cambiata.

    La cosa curiosa è che se faccio ad esempio 5 giri del foreach principale (foreach(Operazioni o in operazioni))  le prima 4 immagini non vengono cambiate, l'ultima invece sì.

    Viene sempre cambiata sempre e solo l'ultima.

    mercoledì 7 aprile 2010 14:22

Risposte

  • Che stupidissimo errore!Ho risolto...

    Basta spostare l'istruzione prog.Image = Properties.Resources.mozilla_giallo; all'interno dell'if(prog.Name == pr) subito prima del break;

    • Contrassegnato come risposta Simone_Francio mercoledì 7 aprile 2010 14:37
    mercoledì 7 aprile 2010 14:36