用户控件传递值的问题,我希望大家赶快帮帮我,我现在急着要~~~~

pp1234567890 2003-10-19 01:55:17
我用两个页面a.aspx,b.aspx,还有一个用户控件,用户控件里只有一个textbox1,
用户控件代码:
Property GetTxt() As String
Get
Return TextBox1.Text
End Get
Set(ByVal Value As String)
TextBox1.Text = Value
End Set
End Property
***********************
a.asp代码:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim usea As New webuser
Session("a") = usea.GetTxt
Response.Redirect("a.aspx")
End Sub
************************
b.aspx代码:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Label1.Text = Session("a")
End Sub
***********************
为什么,我点a.aspx里的BUTTON时候,发现值传递不到b.aspx里????为什么
...全文
33 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
pp1234567890 2003-10-19
  • 打赏
  • 举报
回复
问题解决了,谢谢楼上的几位。
其实不需要进行判断是否为空,
第一,要增加一句 Protected webuser1 As use.webuser(格式:Protected 用户控件在ASPX里的ID as 项目名称.用户控件名称)
第二,不需要实例化(dim use as new webuser),应该直接用webuser1.gettype

正确代码如下:
原代码:
我用两个页面a.aspx,b.aspx,还有一个用户控件,用户控件里只有一个textbox1,
用户控件代码:
Property GetTxt() As String
Get
Return TextBox1.Text
End Get
Set(ByVal Value As String)
TextBox1.Text = Value
End Set
End Property
***********************
a.asp代码:
Public Class WebForm1
Inherits System.Web.UI.Page
Protected webuser1 As use.webuser。。。。。。(增加一句,webuser1为控件在A.aspx里的ID,use.webuser,为项目.用户控件名称)
********************************
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'Dim usea As New webuser。。。。。。。。。。。(这句不需要)
'Session("a") = usea.GetTxt
改为 session("a")=webuser1.GetTxt
Response.Redirect("a.aspx")
End Sub
************************
b.aspx代码:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Label1.Text = Session("a")
End Sub
***********************
xxdneu 2003-10-19
  • 打赏
  • 举报
回复
If TextBox1.Text <> Nothing Then
Return TextBox1.Text
Else
pp1234567890 2003-10-19
  • 打赏
  • 举报
回复
还是不行,
Public Property GetTxt() As String
Get
If TextBox1.Text <> "" Then “这个地方出错,错误提示和以前一样”
Return TextBox1.Text
Else
Return TextBox1.Text
End If
End Get
Set(ByVal Value As String)
TextBox1.Text = Value
End Set
End Property
ddangerous169 2003-10-19
  • 打赏
  • 举报
回复
Dim usea As New webuser 不用这样吧,只要直接引用就行啦
afxucamd 2003-10-19
  • 打赏
  • 举报
回复
把Dim usea As New webuser去掉
在Class 中只要将用户控件声明一下就可以了,不要初始化。
rgbcn 2003-10-19
  • 打赏
  • 举报
回复
调用时usea.GetTxt 是空的吧。

Property GetTxt() As String
Get
Return TextBox1.Text //在这边加个判断,如果是空还回"is null" 试试
End Get
Set(ByVal Value As String)
TextBox1.Text = Value
End Set
End Property
pp1234567890 2003-10-19
  • 打赏
  • 举报
回复
我的想法是:在A里,有用户控件,和一个按牛,当我在拥护空间里的TEXTBOX里输入,然后CLICK,会通过SESSION把用户控件里的TEXTBOX的值传递到B页面,并显示出来,可是每次CLICK,是,就会出现错误
xxdneu 2003-10-19
  • 打赏
  • 举报
回复
到底是那行错了?
在哪个页面运行时出的错
pp1234567890 2003-10-19
  • 打赏
  • 举报
回复
错误提示
未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:


行 27: Property GetTxt() As String
行 28: Get
行 29: Return TextBox1.Text
行 30: End Get
行 31: Set(ByVal Value As String)

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧