Ricerca 
it-ITen-US
Registrazione
Accedi
In-Vesti Dotnetwork
IN-VESTI DNW!!!
Sono finalmente arrivate le nuovissime T-Shirt di DotNetWork!!! Con soli 15,00 € ci sosterrai nelle spese di gestione della Community e ti invieremo a casa una splendida maglietta.
Se vuoi contribuire al mantenimento di DotNetWork.it Vai sulla pagina Iscrizioni
Effettua il pagamento usando IWBank
Click per andare alla pagina di Iscrizione
Oppure un Bonifico bancario (le coordinate sono sulla pagina Iscrizioni), inviaci una mail a support@dotnetwork.it indicandoci la tua taglia e l'indirizzo di spedizione.  Non appena verificata la ricezione del pagamento provvederemo a spedirti la tua T-Shirt.  Le magliette sono disponibili nelle taglie S-M-L-XL-XXL (in caso di esaurimento di una delle taglie, indica quella di "Backup"). Grazie per IN-VESTIRTI con NOI!!!
.:DotNetWork Founders:.
    Stampa     


DotNetWork Forums
selezionare un controllo inserito a runtime
Ultimo Post 11 mag 2010 09.46 by Sabrina (DNW TEAM). 1 Risposte.
Stampa immediata
Ordina:
PrevPrev ProssimoProssimo
Non sei autorizzato ad inviare una risposta.
Autore Messaggi

Posts:537

--
10 mag 2010 11.34  
Buongiorno a tutti.

Ho un Panel dove aggiungo una serie di controlli personalizzati (derivati da PictureBox). Questi controlli vengono inseriti a runtime con questo codice:
Gest.MyControl.Ombrellone MyOmbr = new Gest.MyControl.Ombrellone(mNomeOmbrellone);
 MyOmbr.Location = new Point(mPosizioneX, mPosizioneY);  this.Mypnl.Controls.Add(MyOmbr);

C112 è un nome fittizzio per prova.
Di questi controlli ho circa 200 sul panel. Una volta disegnati sul panel devo cambiare alcune proprietà di questi controlli. Come faccio a selezionare per esempio il controllo Ombrellone("C115") ?

tipo per fare una cosa del genere: OmbrelloneXXXX.Nome = "Mio Nome".

se bisogna cambiare sistema di aggiunta del controllo, va bene comunque...tanto sto ancora in fase di prove.
In VB6 usavo Array di controlli e lo intercettavo così: Ombrellone(X).Nome = "MioNome". Devo fare uguale anche in VB6?
Poi in VB6 avevo predisposto i vari controlli sulla form quindi avevo un controllo "Iniziale" sulla form.
nel ciclo che li selezionava mi bastava scrivere Ombrellone(X).... e non mi dava errore dato che il controllo c'era. Qui in .Net non esiste nessun controllo sul Panel o Form quindi nel ciclo se scrivo Ombrellone(X).... giustamente mi dice che non lo trova. Devo aggiungerlo anche qui uno di rifermento?


Diversamente potrei valorizzare i controlli mentre li costruisco...ma la vedo uno spreco di energie. Se devo valorizzare solo 2 controlli su 200, devo comuqnue fare 200 volte il controllo se un determinato controllo va valorizzato. se invece ho solo due elementi (record di una DataTable), faccio un ciclo e valorizzo solo i 2 controlli.


Grazie.


Posts:811

--
11 mag 2010 09.46  

Domanda:
Se all'ombrellone che generi dai un nome a te noto, presumo che venga generato l'oggetto con quel nome quindi dovresti poterlo recuperare con lo stesso.

Posto che gli oggetti Mypicturebox che crei stiano in un pannello che si chiama MyPanel

MyPicturebox ombrellone = MyPanel.Controls["C115"] as MyPicturebox;
dovrebbe darti un valore non nullo se trova l'oggetto con quel nome nella collezione.
Se però quando crei la collezione degli oggetti, ti metti un bel reference all'oggetto generato sulla collezione di gestione, non devi neppure porti il problema.

Ovvero, se tu generi le picturebox leggendo una collection di oggetti Ombrellone, e nell'oggetto Ombrellone metti una property
Controllo di tipo MyPicturebox (XmlIgnore se poi serializzi la collezione) quando generi il controllo leggendo la collezione, metti il controllo nella property e in qualsiasi momento puoi accedervi per modificarne le property tramite l'indexer della tua collection.

Ti ho confuso a sufficienza ?

Saluti



Sabrina
Non sei autorizzato ad inviare una risposta.

Active Forums 4.1
       
Articoli
Ereditarietà in pillole (Parte 1)
Come creare una TreeView personalizzata
2008/03/22 | Autore: Alberto De Luca
Unit Testing del codice (parte 1)
Le basi per la costruzione di test per rendere più solido il nostro codice
2007/12/26 | Autore: Sabrina Cosolo
ADO.NET Funzionalità di base
Effettuare una ricerca su recordset disconnessi tramite DataView
2007/12/02 | Autore: Andrea Zingoni
Visual Studio LightSwitch Beta 1 - Installazione
La procedura di installazione e le risorse sul web
2010/08/24 | Autore: Mario De Ghetto
Le nostre Librerie nella finestra .NET di Add reference
Come fare in modo di visualizzare le nostre librerie nella finestra .NET dell'Add Reference di Visual Studio
2008/07/27 | Autore: Sabrina Cosolo
Introduzione a Windows Presentation Foundation (parte 2)
La prima di una serie di traduzioni da articoli di MSDN o altre fonti che offrono un punto di partenza per iniziare a capire il WPF.
2007/07/29 | Autore: Patrizia Cosolo
SQL Server Nozioni base (parte 2)
Come creare un database in SQL Server Usando solo il codice SQL
2008/03/09 | Autore: Sabrina Cosolo
Iniziare da zero con Visual Studio
Introduzione a .NET e Visual Studio
2007/07/29 | Autore: Sabrina Cosolo
    Stampa     
Home|Forums|Blogs|Mappa del sito
© 2007-2010 by DotNetWork  .:.  Condizioni d'uso  .:.  Privacy  .:.  Accedi  .:.