码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2020-07-21 14:00:46      阅读:79      评论:0      收藏:0      [点我收藏+]

标签:rgs   send   代码   void   prot   sharp   父页面   div   控件   

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用户控件的公共属性的生命周期和赋值

标签:rgs   send   代码   void   prot   sharp   父页面   div   控件   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!