使用VB.Net(Windows应用程序)
在表单中(称为FirstForm),我使用的是文本框,添加表单按钮,搜索按钮。
当我点击添加表单按钮时,它将提供新表单(与FirstForm相同)
添加新表格的代码
Private Sub btnadd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnadd.Click
Dim SecondForm As New FirstForm
SecondForm.Show()
End Sub
搜索按钮代码
Private Sub Search_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Search.Click
If FirstForm.Focus = True Then
FirstForm.textbox1.Text = gridview1.Rows(crRow).Cells("code").Value.ToString().Trim()
Else
Dim SecondForm As New FirstForm
SecondForm.textbox1.Text = gridview1.Rows(crRow).Cells("code").Value.ToString().Trim()
End If
End Sub
上面的代码正在运行,但如果我在第二个表单中,当我单击搜索按钮并选择该值时,该值将出现在FirstForm文本框中,它不会出现在SecondForm文本框中。
如果显示SecondForm,则所选值应显示在SecondForm文本框中,而不是FirstForm文本框中。
如何解决这个问题。
需要Vb.net代码帮助
答案 0 :(得分:0)
使用Me
- 包含ref的引用变量。目前的形式。
Dim frm As FirstForm
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
If IsNothing(frm) OrElse frm.IsDisposed Then
frm = New FirstForm
End If
frm.Show()
End Sub
Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
Me.textbox1.Text = gridview1.Rows(crRow).Cells("code").Value.ToString().Trim()
End Sub
答案 1 :(得分:0)
使用“我”不会解决问题?你为什么要以静态方式提到表格?
Private Sub Search_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Search.Click
textbox1.Text = gridview1.Rows(crRow).Cells("code").Value.ToString().Trim()
End Sub