|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Aug 2000
Messaggi: 1209
|
[VB.NET] Inviare una variabile ad un nuovo Form
Come posso fare per aprire un Form Figlio all'interno di un Form Padre MdiContainer in modo da passargli una Variabile invece di utilizzare un modulo e dichiarare una variabile Pubblica ???
es: Dim a As Integer = 1 Dim x As New MyForm() MyForm.Show() come posso fare per inviare e raccogliere quella variabile nel "MyForm" ??? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2001
Città: Nordest
Messaggi: 217
|
Hai due possibilità: un overload del costruttore New oppure un membro o proprietà pubblica.
Nel primo caso la variabile la passi quando instanzi il form: Codice:
'nel form figlio MyForm
Private var As Integer
Public Sub New(variabile As Integer)
MyBase.New()
var = variabile
End Sub
'nel form MDI:
Dim f As New MyForm(456) 'passo il valore intero 456
f.MdiParent = Me
f.Show()
Codice:
'nel form figlio MyForm
Private var As Integer
Public Property Variabile() As Integer
Get
Return var
End Get
Set(ByVal Value As Integer)
var = Value
End Set
End Property
'nel form MDI:
Dim f As New MyForm()
f.MdiParent = Me
f.Variabile = 456
f.Show()
__________________
Chi non cerca trova. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Aug 2000
Messaggi: 1209
|
Come ho fatto io e' sbagliato ???
FORM Padre: --------------------------------------------- Dim x As New Figlio() x.Visualizza(5) --------------------------------------------- FORM Figlio: --------------------------------------------- Public Sub Visualizza(ByVal i As Integer) Me.Show() MsgBox(i) End Sub --------------------------------------------- apre il Figlio e un MsgBox con il 5 stampato !!! |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Aug 2000
Messaggi: 1209
|
TROVATO !!!!!!!!
e' il modo perfetto !!! Definisco un overload per il costruttore di "MyForm" cioe il Figlio, Public sub new(ByVal MiaVariabile As Integer) End Sub Nel Form Padre: Dim x As New MyForm(5) x.Show() |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:33.



















