我不确定这个问题是否已经发布,但由于找不到我正在寻找的答案,所以无论如何我都会问。
当我使用ShowDialog()从当前表单调用另一个表单时,它只是在第一次打开时显示控件的名称,如果我关闭它并再次打开它然后显示它应该有的。例如,如果我写一个简单的代码如下
Form1中
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Form2.Display("Message")
End Sub
End Class
Form2
Public Class Form2
Public Sub Display(ByVal msg As String)
Me.ShowDialog(Parent)
Label1.Text = msg
End Sub
End Class
当我第一次点击按钮时,我得到的是“Label1”而不是被叫表格上显示的“消息”但是当我第二次点击按钮时,我得到了所需的输出。 我用Show()尝试了同样的事情并且没有任何这样的问题。但是我需要被调用的表单是模态的(比如MessageBox),所以有没有其他方法可以做到或者有人能告诉我使用ShowDialog()的正确方法吗? 我是vb的新手所以请保持简单。
由于
答案 0 :(得分:1)
ShowDialog是一个阻止调用。您需要在调用之前设置所有内容。