Windows窗体关闭后,表单数据被删除

时间:2013-01-23 00:56:20

标签: vb.net winforms .net-4.0

我有一个附属表单,我可以在其中输入数据,然后在关闭表单之前保存它并返回使用主表单。 当我重新打开子公司表格时,我看不到我之前输入的数据的变化。 谁能告诉我哪里错了?

 MainForm.vb
    Public Class Maincls
    oTestObj as New Testcls
    oTestObj.XYZ = "XYZ"

    Private Sub SoftwareSettingsToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles SoftwareSettingsToolStripMenuItem.Click

    Testcls.tbXYZ.Text = oTestObj.m_XYZ
    Testcls.Show()
    End Sub
    End Class


    Form_Testcls.vb
    Public Class Testcls

    Structure Params
    Dim m_XYZ as String
    End Structure
    Dim oParams as Params

    Public Sub New ()
    InitializeComponent()
    End Sub

    Private Sub btnOK_Click(sender As System.Object, e As System.EventArgs) Handles btnOK.Click
    XYZ = tbXYZ.Text
    Me.Hide()
    End Sub

    Public Property XYZ() As String
            Get
                Return Me.oparams.m_XYZ
            End Get
            Set(ByVal value As String)
                Me.oparams.m_XYZ = value
            End Set
       End Property
    End Class

1 个答案:

答案 0 :(得分:0)

我认为在Windows窗体中,解决此问题的方法是创建一个静态类并根据您的要求添加属性。然后在关闭表单时填充这些静态属性。现在您可以使用静态数据成员中设置的值,除非您在任何其他事件上更改它们。

编辑:在vb.net中,静态实际上是NonInheritable