1

我的 winform 应用程序中有很多对话框,当我需要加载时,我会为每个对话框执行此操作

Dim frm As New Settings
        frm.ShowDialog()
        frm = Nothing

我在想是否有可能有这样的例程

sub LoadDialog(byval item as form)
' code to load specific form passd here
end sub

然后我这样打电话loadDialog(customersDialog)。CustomerDialog 是一个表单

关于如何做到这一点的想法?

4

2 回答 2

1

您可以制定一个通用程序来处理此问题:

Public Shared Sub LoadAndShowDialog(Of T As {Form, New})()
    Dim frm As New T
    frm.ShowDialog() 
End Function

然后,您可以将其称为:

LoadAndShowDialog(Of Settings)()
于 2013-03-22T16:48:31.180 回答
0

所有表单都继承自 Form 对吗?下面应该没问题。如果您需要该表单中的某些内容,请将其存储在标签中,您可以在表单关闭后检索它。

Public Function LoadForm(MyForm As Form) As Object
    MyForm.ShowDialog()
    Return MyForm.Tag
End Function
于 2013-03-22T16:53:04.603 回答