是否可以像 Winforms 中那样将 WebUserControl.ascx 加载到默认页面中的面板

发布于 2024-10-18 02:37:50 字数 154 浏览 2 评论 0原文

我有一个默认页面,即default.aspx,其中我将有面板。我将有另外 2 个表单,即 Webusercontrol1.ascx 和 Webusercontrol2.ascx 我将使用一些控件设计页面,现在是否可以将此页面加载到默认页面上的面板中,就像我们在 WINFORMS 中所做的那样。

I am having a default page namely default.aspx in this i will have panel. And i will have 2 other forms namely Webusercontrol1.ascx and Webusercontrol2.ascx i will design the page with some controls now is it possible to load this page in to the panel which was on default page like as we did in WINFORMS.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

心凉 2024-10-25 02:37:50

Web 用户控件 (.ascx) 绝对可以加载到面板中。

Web 表单 (.aspx) 不能。

您是否尝试动态将用户控件加载到面板中?如果是这样,您也可以这样做,但您必须在每次回发时都这样做。

要从后面的代码将控件添加到面板,只需创建它,然后将其添加到面板的 Controls 集合中。请记住,必须在每个后续回发中重复此操作。

WebUserControl uc = new WebUserControl();
panel1.Controls.Add(uc);

请确保在您的 aspx 文件中注册您的用户控件

<%@ Register Src="~/WebUserControl.ascx" TagPrefix="uc" TagName="WebControl"  %>

Web user controls (.ascx) can definitely be loaded into a panel.

Web forms (.aspx) cannot.

Are you trying to dynamically load your user controls into a panel? If so, you can do that too, but you have to do it on every postback.

To add a control to your panel from the code behind, simply create it, and then add it to the Controls collection of the panel. Just remember, this has to be repeated on every subsequent postback.

WebUserControl uc = new WebUserControl();
panel1.Controls.Add(uc);

Just be sure to register your user control in your aspx file

<%@ Register Src="~/WebUserControl.ascx" TagPrefix="uc" TagName="WebControl"  %>
情何以堪。 2024-10-25 02:37:50

我想这就是我需要的

UserControl usr1 = (UserControl)LoadControl("WebUserControl.ascx");

I think this is the one i required

UserControl usr1 = (UserControl)LoadControl("WebUserControl.ascx");
恋竹姑娘 2024-10-25 02:37:50

在ascx中:

<%@ Register src="RC01.ascx" tagname="RC01" tagprefix="uc1" %>
<asp:Panel ID="Panel1" runat="server"> </asp:Panel>

在ascx.cs中

protected void Page_Load(object sender, EventArgs e)
{
    RC01 uc1 = (RC01)LoadControl("RC01.ascx");
    Panel1.Controls.Add(uc1);
}

In ascx:

<%@ Register src="RC01.ascx" tagname="RC01" tagprefix="uc1" %>
<asp:Panel ID="Panel1" runat="server"> </asp:Panel>

In ascx.cs

protected void Page_Load(object sender, EventArgs e)
{
    RC01 uc1 = (RC01)LoadControl("RC01.ascx");
    Panel1.Controls.Add(uc1);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文