首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用form.Controls.Add(page.LoadControl)传递一些文本

如何使用form.Controls.Add(page.LoadControl)传递一些文本
EN

Stack Overflow用户
提问于 2019-06-07 10:52:00
回答 1查看 50关注 0票数 0

我将传递一些文本和图像地址从aspx文件到ascx文件与page.loadControl函数。

在我的aspx文件中,我有下面这行代码:

代码语言:javascript
复制
form.Controls.Add(page.LoadControl("~/Controls/Shared/NoResults.ascx"));

如何将位于aspx中的page.loadControl数据传递给userControl?如何在ascx中使用?

代码语言:javascript
复制
internal string RenderList()
        {
            ConstructGrid();
            SetSort();
        
            var page = new Page() { EnableViewState = false };
            var form = new System.Web.UI.HtmlControls.HtmlForm();
            page.Controls.Add(form);
            if (Data != null && Data.PageInfo != null && Data.PageInfo.TotalRecords > 0)
    {
  form.Controls.Add(this);
   DataBind();
     }
    else
                form.Controls.Add(page.LoadControl("~/Controls/Shared/NoResults.ascx"));
  return ControlLoader.RenderCustomControl(page);
        }

EN

回答 1

Stack Overflow用户

发布于 2019-06-07 13:12:12

您必须在.ascx文件中公开一个公共属性,并将所需的值分配给各个属性。

代码语言:javascript
复制
    internal string RenderList()
            {
                ConstructGrid();
                SetSort();

                var page = new Page() { EnableViewState = false };
                var form = new System.Web.UI.HtmlControls.HtmlForm();
                page.Controls.Add(form);
                if (Data != null && Data.PageInfo != null && Data.PageInfo.TotalRecords > 0)
        {
      form.Controls.Add(this);
       DataBind();
         }
        else
               var noResultsControl  =  (Page.LoadControl("~/Controls/Shared/NoResults.ascx") as NoResults)  
noResultsControl.PropertyOne =  "Sample"  ;
    form.Controls.Add(noResultsControl);
      return ControlLoader.RenderCustomControl(page);
            }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56487400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档