ビジュアルベーシックでフォームを渡っていくつかのデータを渡して返すときのエラーを解決する方法。あなたがしようとしている場合はエラー:Form1はwindowsApplicationの型であり、式として使用することはできません。
Error: Form1 is a type of windowsApplication cannot be used as an expression showin error on "Form 1" (Public Class Form1)
FORM 1 CODE
Public Class Form1
Dim eid As String = ""
Public Sub New(ByVal empid As String)
InitializeComponent()
eid = empid
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'Declare a variable of string type
Dim pass As String = TextBox1.Text
Dim frm As New Form2(pass)
frm.ShowDialog()
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label2.Text = eid.ToString()
End Sub
End Class
FORM 2 CODE
Public Class Form2
Dim eid As String = ""
Public Sub New(ByVal empid As String)
InitializeComponent()
eid = empid
End Sub
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label1.Text = eid.ToString()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim value As String = TextBox2.Text
Dim fr As New Form1(value)
fr.ShowDialog()
End Sub
End Class
http://grantwinney.com/passing-data-between-two-forms-in-winforms/はd? –
on Form1(パブリッククラスForm1) – Nitin
これは、Form1もスタートアップフォームであるためです。プログラムが起動してForm1が作成されたときに* empid *のどの値が渡されるかはわかりません。別の起動フォームを選択するか、デフォルトのコンストラクタPublic Sub New()を引数なしで追加する必要があります。 –