stewdaddy
asked on
How do I declare a variable and assign the value once, and then reuse that variable in multiple procedures?
Ok, this one is really basic, but for some reason I can't figure it out or find the info on the net. I want to declare a variable in one spot, say:
Dim strX as string = "X"
and then reference that variable in multiple procedures/functions without having to re-declare it. The reason being I want to assign paths to the variables, and when the paths change I want to only have to update the variables in one location.
Dim strX as string = "X"
and then reference that variable in multiple procedures/functions without having to re-declare it. The reason being I want to assign paths to the variables, and when the paths change I want to only have to update the variables in one location.
try using shared keyword.
Shared strX As String = "X"
Shared strX As String = "X"
declare the variable as member variable in the class so that it is accessible from all functions
ASKER
Where do I declare the variable though? I thought you do it in the declarations section, but I keep getting a "Statement is not valid in a namespace." error.
You have several options:
- Declare in a module as Public
- Declare in a class as Public Shared
- Define on the settings (My Project - Settings Tab)
- Declare in a module as Public
- Declare in a class as Public Shared
- Define on the settings (My Project - Settings Tab)
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thanks.
Some examples:
' **** CLASS ****
Public Class Class1
Public Shared myVar As String = "some text"
End Class
' Then in the form
MessageBox.Show(Class1.myVar)
' **** MODULE ****
Public Module Module1
Public myNewVar As String = "some text"
End Module
' Then in the form
MessageBox.Show(myNewVar)
ASKER
jpaulino...
If I go with the module approach, how do I use input from the form, such as:
Public Module Variables
'Project Directory
Public strProjectDirectory As String = "J:\" & txtProject.Text & "\"
End Module
VB doesn't let me use txtProject.text
If I go with the module approach, how do I use input from the form, such as:
Public Module Variables
'Project Directory
Public strProjectDirectory As String = "J:\" & txtProject.Text & "\"
End Module
VB doesn't let me use txtProject.text
Not that way. You have to declare the variable in the module:
Public strProjectDirectory As String
Then in any place (like in form load event) you can assign the value:
strProjectDirectory = "J:\" & txtProject.Text & "\"
After this you can use it in any place.
ASKER
oh ok thanks
Glad I could help
For your reference:
http://www.go4expert.com/forums/showthread.php?t=3689