ASP.net(C#):是否可以从一个网络表单访问另一个网络表单上的控件?

ASP.net(C#): Is it possible to access controls on one webform from another?

我目前正在构建一个网络应用程序,它将成为我公司的新数据中心(内联网网站)。我将它连接到活动目录并设置了一个用户组以允许页面编辑。我正在创建一个用户控件来为我们的 QA 经理提供更多的编辑权限,这样他就可以管理网站而无需我重新编写任何代码。

这是我的问题: 因为我使用用户控件作为新的编辑控件;我需要能够访问正在使用编辑控件的任何页面上的控件。对于我的生活,我无法弄清楚如何。

这是我正在尝试做的一个简单示例:

 WebPartManager wpm = (WebPartManager)WebPartManager.GetCurrentWebPartManager(this.Page);


    TextBox testBox = new TextBox
    {
        ForeColor = System.Drawing.Color.Blue,
        ID = "testID",
        Width = 500,
        Height = 200
    };


    GenericWebPart testGWP = wpm.CreateWebPart(testBox);

    wpm.AddWebPart(testGWP, WebPartZone4, 1); //heres where I get my error. WebPartZone4 is a webPartZone in one of my pages.

如果我 运行 页面上的这段代码表示 WebPartZone 达到了预期的效果,那么我知道代码有效。我的用户控件无法在另一页上看到 WebPartZone。任何帮助都会很棒。谢谢。

我觉得这最终变得多么容易有点愚蠢,但这里是为遇到同样问题的任何人准备的。

这是我用来测试的简单用户控件的设计。它只是一个按钮。 xD

<%@ Control  Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl3.ascx.cs" Inherits="AcmeCompany_DATA_CENTER_v2.WebUserControl3" %>
<asp:Button ID="Button1" runat="server" OnClientClick="Button1_Click" Text="Button" OnClick="ButtonCreate_Click" PostBackUrl="~/WebUserControl3.ascx" />

这是用户控件的隐藏代码

 protected void ButtonCreate_Click(object sender, EventArgs e)
    {
        WebPartManager wpm = (WebPartManager)WebPartManager.GetCurrentWebPartManager(this.Page);

        TextBox testBox = new TextBox
        {
            ForeColor = System.Drawing.Color.Blue,
            ID = "testID",
            Width = 500,
            Height = 200
        };          

        GenericWebPart testGWP = wpm.CreateWebPart(testBox);

        wpm.AddWebPart(testGWP, wpm.Zones["WebPartZone4"], 1);
    }

我不知道 webpartmanager 中的区域 class,我只是在滚动寻找可能有用的东西时发现了它。 Tada.....总是小事

P.S。 @Maciej S。谢谢你,虽然你没有给我答案,但我们的谈话帮助我的大脑思考寻找某些东西。