通用对话框加载例程

时间:2013-03-22 16:43:21

标签: .net winforms subroutine

我在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是表格的位置

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

2 个答案:

答案 0 :(得分:1)

您可以设置generic procedure来处理此问题:

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

然后您可以将其称为:

LoadAndShowDialog(Of Settings)()

答案 1 :(得分:0)

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

Public Function LoadForm(MyForm As Form) As Object
    MyForm.ShowDialog()
    Return MyForm.Tag
End Function