VB.net如何从我的用户控件文本框中获取值

时间:2016-01-22 07:00:09

标签: vb.net user-controls

我确实有一个日常监控项目,我从文本框中获取文本时遇到问题,其中我的文本框位于我的用户控件中。

情节将是,如果我点击显示按钮,将在我的面板中调用userControl.vb我没有问题将userControl.vb放到我的面板上,如果我点击保存按钮将检查是否全部在保存数据之前填充字段。我会正常保存,不会检查我的面板,我加载我的userControl.vb

这是我的代码段项目树:

DXApplication
|_My Porject
|_User Control <folder>
  |_userControl.vb <user control form>
|_frmMainActivity <winForm>

这是我在面板中加载userControl的代码

Friend ctrlUser As UserControl

ctrlUser = New userControlx
ctrlUser.Dock = DockStyle.Top
pnlActivity.Controls.Clear()
pnlActivity.Controls.Add(ctrlUser)

这里是用于从另一个子userControl调用文本框以检查代码是否可以获取文本的代码。

*edited the userControl should be userControlx*
Dim uc As New userControlx
Msgbox(uc.txtLatitude.text)

当我按下触发按钮以显示我放在文本框中的文本时,我会返回带有空字符串的msgbox。

有什么建议吗?在调用文本框的值时我在哪里出错?

我尝试过使用:

Dim uc As New userControlx
uc.txtLongitude.text = "Test Text"
msgbox(ux.txtLongitude.txt)

它将返回测试文本,但在我的UI中,加载的文本框为空。

1 个答案:

答案 0 :(得分:0)

在触发按钮中,您创建了userControl的新实例,这就是您的文本框内容为emtpy的原因

改为使用

Msgbox(ctrlUser.txtLatitude.text)