我想使用vb.net重置我的表单我会尝试下面的代码,但表单关闭无法打开新表单。
<input type="email" autocapitalize="off" autocorrect="off" name="EMAIL" placeholder="Email address" required="" name="MERGE0" id="MERGE0">
答案 0 :(得分:1)
尝试Me.Hide
并交换订单
Me.Hide()
client.Show()
答案 1 :(得分:0)
可能有多种方法来处理这个问题,但我的方法就像调用form_shown一样,即使我将加载所需的数据,在重置期间我也会调用此事件。
Private Sub Me_Shown(sender As Object, e As EventArgs) Handles Me.Shown
LoadData() 'This function/sub will load data for this form
End Sub
Private Sub resert_button_Click(sender As Object, e As EventArgs) Handles resert_button.Click
Me_Shown(sender,e)
End Sub
答案 2 :(得分:0)
使用Me.Dispose()而不是Me.Close()它将处理表单然后当你再次调用它时,它将生成一个新的。
答案 3 :(得分:0)
这样做的一种方法是向Form2添加属性。我假设你有两个表格让我们称之为Form1和Form2。在Form1的代码中的某处,您声明了Form2的实例..
Dim frm2 As New Form2
并且在某些时候你想将Form2显示为模态窗口..
frm2.ShowDialog()
暂时让我们看一下Form2代码
我假设你有一个按钮来重置表单并关闭表单,你只需点击右上角的表单关闭按钮,也许你有一个按钮来关闭表单。请考虑Form2的以下代码
Public Class Form2
Friend Property resetOnClose As Boolean = False
Private Sub btnReset_Click(sender As Object, e As EventArgs) Handles btnReset.Click
resetOnClose = True
Me.Hide()
End Sub
Private Sub btnclose_Click(sender As Object, e As EventArgs) Handles btnclose.Click
resetOnClose = False
Me.Hide()
End Sub
End Class
有一个名为resetOnclose
的属性,它是一个布尔类型。如果单击重置按钮,则此属性设置为True
如果单击关闭按钮,则resetOnClose
属性将设置为false。
在所有这些代码中,frm2
被隐藏 - 未关闭。这意味着表单及其resetOnclose
属性仍可用于Form1。现在好了,看看Form1代码..
Public Class Form1
Dim frm2 As New Form2
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Shown
frm2.ShowDialog()
Do
If frm2.resetOnClose Then
frm2.Close()
frm2 = New Form2
frm2.ShowDialog()
Else
frm2.Close()
End If
Loop Until frm2.resetOnClose = False
End Sub
End Class
对于此示例,只要显示Form1,就会打开frm2
,但您可以将相关代码放在任何需要的地方
在Form1.Shown
代码中,您会看到一个循环。只要resetOnClose
为True
,循环就会继续循环。当frm1
以模态方式显示时,在此Form1代码中执行将等待,直到frm2
被隐藏或关闭。接下来,Form1代码检查resetOnClose
属性是true还是false。如果为false,则frm2
关闭,循环终止。如果该属性为true,则关闭frm2
并在其默认状态下重新分配Form2
的新实例。
瞧!