首页 > Web开发 > 详细

asp.net用户控件的公共属性的生命周期和赋值

时间:2020-07-21 15:36:57      阅读:59      评论:0      收藏:0      [点我收藏+]

asp.net用户控件的公共属性可以用特性声明的方式赋值,如   <uc1:WebUserControl1 runat="server" id="WebUserControl1"  Projectid="20191204153020"  />,

这种情况下,无论是用户控件本身的postback还是父页面的postback,均可以正常使用这个值。

但是如果在父页面的page_load事件的 !ispostback代码块里赋值,如

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                WebUserControl2.Projectid = 20200610101559;
            }
        }

  则在控件的postback里,取不到这个值,如

      protected void Button1_Click(object sender, EventArgs e)
        {
            Button1.Text =projectid.ToString();
        }

以上代码取到的projectid值为0。

对这个问题的解决方法有两种:

1,父页面在page_load里赋值时,不要放在!ispostback块,

2,自行保存,如在用户控件里增加隐藏域。

 

asp.net用户控件的公共属性的生命周期和赋值

原文:https://www.cnblogs.com/wzy77cn/p/13354356.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!