如何传值到button1_Click中

zjroland 2015-02-19 05:57:40
public int sUserID
protected void button1_Click(object sender, EventArgs e)
{
int userID =sUserID;
}
结果int userID中的值是null,如何才能把sUserID的值传到button1_Click中呢?


...全文
277 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zbdzjx 2015-02-26
  • 打赏
  • 举报
回复
凭感觉说说,button1一点,页面就刷新了一次,sUserID就被重新刷新成null了。
atmo 2015-02-26
  • 打赏
  • 举报
回复
一般的处理方法是保存到页面上
  • 打赏
  • 举报
回复
声明一个 public int sUserID; 是无意义的,应该记住这个概念!
  • 打赏
  • 举报
回复
嗯,原来是读取 sUserID 的值啊。呵呵,我一开始看错了。 对于asp.net来说,页面对象一瞬间就销毁了。声明一个 public int sUserID 是无意义的。你应该这样写
public int sUserID
{
    get{ var x = ViewState["suid"]; return x==null?0: (int)x; }
    set{ ViewState["suid"]=value; }
}
insus 2015-02-26
  • 打赏
  • 举报
回复
你宣告这个public int sUserID 时马上赋个值给它,再试试是否有值?
zfcode 2015-02-26
  • 打赏
  • 举报
回复
首先你要确定“sUserID”中有值。。 打个断点,我估计你会发现“sUserID”这个值本身就是null。 因为当你出发点击事件时,你当前这个页面的全局标量并没有保存下来。可以考虑写到session 或者重新从前台页面传值过来。
异常异长 2015-02-25
  • 打赏
  • 举报
回复
可以设置全局变量 或者 session 等等。
  • 打赏
  • 举报
回复
你不应该声明 int 。这是在声明局部变量。
zjroland 2015-02-19
  • 打赏
  • 举报
回复
我用public string sUserID { get { return (string)ViewState["myValue"]; } set { ViewState["myValue"] = value; } } protected void btnSignIn_Click(object sender, EventArgs e) { int userID = int.Parse(sUserID); } 试过了,也不行。

62,070

社区成员

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

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

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

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