关于GET/SET问题,传值后为NULL,请大家帮忙解决(放60分)

shortstar 2006-08-15 09:38:58
我先创建一个Temp.ascx用户控件
代码如下:
private NvaigateUrl1;
protected System.Web.UI.WebControls.HyperLink hl1;

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
hl1.NavigateUrl=NavigateUrl1;  //也就是每次到这步时,NavigateUrl1的值总是Null
}

public string LinkNavigateUrl1
{
get
{
return NavigateUrl1;
}
set
{
NavigateUrl1 = value;
}
}

然后新建一个WEB页
把上面控件拖到这个WEB页上
后台代码如下:
//为各模块导航按钮赋予链接
protected Temp temp1=new Temp();

private void AddNavigate()
{
this.temp1.LinkNavigateUrl1="../../../../WebForm1.aspx";
}

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!Page.IsPostBack)
{
AddNavigate();
}
}

这样写完以后,每当点击Temp.ascx中的hl1时,显示链接总是为空。
不知道为什么
...全文
507 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
shortstar 2006-08-15
  • 打赏
  • 举报
回复
谢谢大家,我的问题已经解决了,
是protected Temp temp1=new Temp();这句的问题
这句的格式应该是protected [控件类名] [在页面上的ID名]
shortstar 2006-08-15
  • 打赏
  • 举报
回复
嗯...还是不可以,我现在的问题是SET方法里VALUE是可以看到值的,但是执行GET方法的时候,值就为NULL了,不知道怎么回事
  • 打赏
  • 举报
回复
帮顶
ccwq 2006-08-15
  • 打赏
  • 举报
回复
protected Temp temp1=new Temp();好像控件不是这么声明的:public System.Web.UI.UserControl Temp=new Temp();
要在ASPX页上引用的
Eddie005 2006-08-15
  • 打赏
  • 举报
回复
protected System.Web.UI.WebControls.HyperLink hl1;

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
hl1.NavigateUrl=LinkNavigateUrl1;  
}

public string LinkNavigateUrl1
{
get
{
if(ViewState[this.ClientID+"_url"]==nul)
return string.Empty;
else
return ViewState[this.ClientID+"_url"].ToString();
}
set
{
ViewState[this.ClientID+"_url"] = value;
}
}

62,244

社区成员

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

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

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

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