Salve Antonio, innanzitutto grazie per la tua risposta. E' un onore per me ricevere una risposta da te.
Un esempio lampante che mi viene in testa sarebbe:
e in form2:codice:Public Class Form1 Public Shared link_url As String Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click UserControl1.WebBrowser1.Navigate("https://www.google.com/ ") End Sub Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) link_url = UserControl1.WebBrowser1.Document.Links(1).GetAttribute("href") Dim frm As New Form2 frm.Show() End Sub Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load AddHandler UserControl1.WebBrowser1.DocumentCompleted, AddressOf WebBrowser1_DocumentCompleted End Sub End Class
ma sono esempi abbastanza "terra terra" o forse sono io che mi sto perdendo in un bicchier d'acqua.codice:PublicClassForm2 PrivateSubForm2_Load(sender AsObject, e AsEventArgs)HandlesMyBase.Load UserControl2.Label1.Text=Form1.link_url EndSub EndClass
Non capisco perchè non posso eseguire il tutto direttamente tramite usercontrols tipo:
Mentre in Usercontrol2:codice:Public Class Usercontrol1 Public Shared link_url As String Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Try Dim collection As HtmlElementCollection = WebBrowser1.Document.All For Each element As HtmlElement In collection If element.TagName = "A" Then link_url = element.GetAttribute("HREF") If link_url.Length > 70 Then link_url= link_url.ToString.Replace(" - YouTube", "") Label2.Text = "Creating Download - Step 1/4" End If End If Next End Sub End Class
Dove sta il mio errore? Sarebbe impossibile trasferire dati da usercontrols senza passare tramite i rispettivi forms prima?codice:Dim sitoGoogleQrCode As String = "http://chart.googleapis.com/chart?chs={WIDTH}x{HEIGHT}&cht=qr&chl={TESTO}" sitoGoogleQrCode = sitoGoogleQrCode.Replace("{WIDTH}", PictureBox1.Width.ToString()).Replace("{HEIGHT}", PictureBox1.Height.ToString()).Replace("{TESTO}", WebUtility.UrlEncode(usercontrol1.link_url)) Dim client As WebClient = New WebClient() Dim bytes As Byte() = client.DownloadData(sitoGoogleQrCode) client.Dispose() Dim memStream As MemoryStream = New MemoryStream(bytes) Dim bmpQrCode As Bitmap = New Bitmap(memStream) PictureBox1.Image = bmpQrCode usercontrol1.Label2.Text = "Creating QR - Step 2/4"
Sto leggendo online tantissimi esempi.. Dal set & get, alle variabili publiche e per finire adesso sto provando a creare un modulo che posso richiamare in ogni form, senza tante dichiarazioni.. Qualsiasi consiglio è accetto.
Ti ringrazio,
Mattia

Rispondi quotando
