声明一个公共变量

时间:2014-04-22 15:50:31

标签: asp.net vb.net

当我尝试移动' UserName'来自当地范围' dim'对于公开,我得到的对象引用未设置为对象的实例。'造成这种情况的原因是什么?

从这里开始:

Dim UserName As TextBox = DirectCast(LoginUser.FindControl("UserName"), TextBox)    

到此:

Public UserName As TextBox = DirectCast(LoginUser.FindControl("UserName"), TextBox)

然后像这样访问变量:

If (Request.Cookies("Username") IsNot Nothing) Then
    UserName.Text() = Request.Cookies("Username").Value.ToString()
End If

1 个答案:

答案 0 :(得分:2)

您的代码有3个潜在问题:

  1. 应为UserName.Text,即不是.Text()

  2. Request.Cookies("Username").Value.ToString()
       如果在cookie集合中找不到“用户名”,您将获得一个    没有价值。然后你什么也没有调用ToString    为您提供对象参考错误。

  3. 确保UserName TextBox是初始化的,而不是什么时候    你试图访问它。