Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Richiamare controllo creato da codice
venerdì 28 settembre 2012 - 14.12
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
Feroxis
Profilo
| Junior Member
80
messaggi | Data Invio:
ven 28 set 2012 - 14:12
Poniamo che io abbia un form con un pannello e delle textbox create all'interno tramite form1.panel1.contros.add(mycontrol)
Ogni textbox ha come nome = "txtnome", "txtcognom", ecc
Cliccando un terzo pulsante come faccio ad assegnare ad una variabile in un modulo esterno al form, il valore che sta nella texbox di nome txtnome?
AntCiar
Profilo
| Expert
936
messaggi | Data Invio:
ven 28 set 2012 - 14:19
ciao.
hai due modi per cercare un controllo:
1 - utilizzare il metodo Find. Dichiarati un array di oggett control e invocando il Find sul pannello ottieni tutti i controlli con il nome "X"
Dim res as Control() = me.panel1.Find("txtnome", true)
if res.lenght > 0 then
...... = res(0)
end if
2 - Scorrere tutti i controlli del panel e confrontare il nome.
Dim i as integer
for i = 0 to me.panel1.controls.count-1
if me.panel1.controls(i).name.Equals("txtnome", StringComparison.InvariantCultureIgnoreCase) then
...... = me.panel1.controls(i)
end if
next
PS: il codice l'ho scritto di pugno quindi sicuramente ci sarà qualche errore di sintassi.
Cristian Barca
Feroxis
Profilo
| Junior Member
80
messaggi | Data Invio:
ven 28 set 2012 - 14:29
Si ma non riesco a capire come prelevare il camo text dell'oggetto in questione.
AntCiar
Profilo
| Expert
936
messaggi | Data Invio:
ven 28 set 2012 - 14:32
basta che converti l'oggetto trovato nel suo tipo e hai tutti i metodi.
ad esempio:
Ctype(me.panel1.controls(i), TextBox).text
Cristian Barca
Feroxis
Profilo
| Junior Member
80
messaggi | Data Invio:
ven 28 set 2012 - 21:37
Vediamo ora:
Ho un form, con un content split panel
dentro al panel 2 c'è un'altro pannello in dockfill chiamato pnlhome
dentro questo pannello: ne creo un'altro
Dim panelgenerato As New Panel
panelgenerato.Dock = DockStyle.Fill
panelgenerato.Name = "PanelGNT"
poi dentro creo della roba tipo
monthcal.Location = location
AddHandler monthcal.DateChanged, AddressOf monthcal_DateChanged
panelgenerato.Controls.Add(monthcal)
labe.Name = "labeldataavv"
labe.Location = location
labe.Text = #1/1/1900#
AddHandler labe.Click, AddressOf labe_click
panelgenerato.Controls.Add(labe)
Form1.TabControl1.TabPages.Item(0).Controls.Add(panelgenerato)
collegati con friends withevents
devo far arrivare la data selezionata nel label
(ora nel label c'è un cdice che tramite msgbox richiama l'indice di riferimento del label che è 3)
poi:
Friend WithEvents monthcal As New System.Windows.Forms.MonthCalendar
Private Sub monthcal_DateChanged(sender As System.Windows.Forms.MonthCalendar, e As System.EventArgs) Handles monthcal.DateChanged
CType(Form1.pnlhome.Controls.(3), Label).Text = sender.SelectionStart.Date
End Sub
Nel label non accade nulla
Per questo chiedo è possibile accede al campo text di una label tramite il nome tipo HTML Collectros GetElementByName??
Feroxis
Profilo
| Junior Member
80
messaggi | Data Invio:
ven 28 set 2012 - 21:48
Ci sono riuscito dato che erano parecchi oggetti uno dentro l'altro il codeice diventa:
CType(Form1.TabControl1.TabPages(value).Controls(0).Controls(3), Label).Text = sender.SelectionStart
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !