在Visual Studio 2008中创建全局变量

时间:2013-11-26 14:12:44

标签: vb.net visual-studio-2008

我有一个需要用户身份验证的程序。现在我将登录名存储在公共字符串中,但我想使用有关用户的更多信息,例如他选择使用的语言,他的名字和类似的东西。我可以创建另一个公共字符串,但我不喜欢这个想法。 我的目标是在输入用户名和密码时保存有关用户的一些数据。 我想创建这样的东西:

user.logonname
user.language

我认为一个结构会起作用,所以我创造了这个:

Public Structure user
    Public logonname As String
    Public languagetype As String
End Structure

但我只能这样访问它:

Dim user1 as new user

但这不能覆盖公共结构,只是创建它的实例,因此其他表单将不具备我需要的信息。 我在VB6中看到类似这样的东西,但该程序使用的是DLL,包含这种类型的变量,我真的不明白它,我确信有更好的方法。 有人可以帮我弄这个吗? 提前谢谢。

3 个答案:

答案 0 :(得分:1)

也许这会对您的项目有所帮助。祝你好运!

Public Type EmployeeName

FirstName As String

MidInit As String

LastName As String

End Type



Public Type EmployeeRecord

udtEmpName As EmployeeName

dtmHireDate As Date

sngHourlyRate As Single

dblQuarterlyEarnings(1 To 4) As Double

End Type



Dim udtEmpRec As EmployeeRecord

您将引用EmployeeName字段,如下所示:

udtEmpRec.udtEmpName.FirstName

udtEmpRec.udtEmpName.MidInit

udtEmpRec.udtEmpName.LastName

答案 1 :(得分:1)

感谢Plutonix,我想通了。如果有人需要它,我就是这样做的:

Public Module GeneralModule
    Public Structure user
        Public logonname As String
        Public languagetype As String
    End Structure

    Public guser As New user
End Module

我可以随时随地访问guser。

示例:

Private Function login
    'Some other code
    guser.logonname = Me.userid.text
    guser.languagetype = Me.ComboBoxLanguage.Text
End Function

答案 2 :(得分:0)

创建一个模块并在该模块中声明您的公共变量。那些变量将可供整个项目使用