У меня есть переменная, область которой должна быть глобальной, потому что она должна вызываться как в функции, так и при нажатии кнопки. Поэтому я объявил переменную в модуле, чтобы она была глобальной.
Проблема в том, что значение этой переменной должно быть равно значению свойства text текстового поля в форме.
Здесь вы можете скачать VB.net демонстрацию моей проблемы: http://db.tt/DDxQJDXl
Ниже приводится объяснение того, что происходит
Вы вводите строку в текстовое поле, в этом случае я ввел «Привет». Затем вы нажимаете кнопку, и она отображает то, что вы написали.
Вы нажимаете OK в этом окне сообщения и изменяете значение в текстовом поле. В этом случае я изменил его на «До свидания». Затем я снова нажал кнопку, но переменная не изменила значения, и в окне сообщения снова отображается «Hello».
Вот весь исходный код:
Module Module1
Public strDataValue = frmTest.txtDataValue.Text
End Module
Public Class frmTest
Private Sub btnTest_Click(sender As System.Object, e As System.EventArgs) Handles btnTest.Click
MsgBox(strDataValue)
End Sub
End Class
Примечание: Это просто демонстрация проблемы, с которой я столкнулся в гораздо более крупной программе, поэтому переменная действительно должна быть глобальной.