winforms 如何在Visual Basic中跨多个窗体实现登录中的环境变量?

pvcm50d1  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(107)

我正在做一个Visual Basic项目,我需要实现在登录时设置的环境变量,并在不同的表单中访问它们。这个想法是在整个应用程序中维护用户特定的信息。
x1c 0d1x的数据

Public Class GlobalVariables
    Public Shared LoggedInStudentID As String
End Class

字符串
尽管在登录表单中设置了LoggedInStudentID,但我在StudentDashboard表单中访问它时遇到了困难。我正在寻求有关在Visual Basic中在表单之间共享数据的最佳方法的建议。
我已验证登录表单中的LoggedInStudentID设置正确。但是,当尝试在StudentDashboard表单中访问它时,它似乎为null或空。
我一直在使用Visual Studio 2022任何关于如何在Visual Basic应用程序中正确共享和访问窗体中的全局变量的见解或示例都将非常感谢。谢谢!

tgabmvqs

tgabmvqs1#

在一个单独的代码页(例如,GlobalVariables.vb)中,像这样添加类:

Public NotInheritable Class GlobalVariables
    
    Private Sub New()
    End Sub

    Public Shared Property LoggedInStudentID As String

End Class

字符串
不要将一个Public Class隐藏在另一个Public Class(即你的Form类)中,因为这会让其他开发人员更难找到和调试你的代码。
现在你应该可以在你的应用程序中的任何地方获取或设置学生ID:

GlobalVariables.LoggedInStudentID = "abc123"

TextBox1.Text = GlobalVariables.LoggedInStudentID

相关问题