如何通过cs文件加载用户控件

时间:2014-01-15 21:53:09

标签: c# asp.net user-controls webforms

我在UC文件夹中创建了两个用户控件。我需要在我的页面中加载它们,具体取决于CS文件中的场景。在我的CS文件中我有

    protected override string GetMessage()
    {

        if (previousAttempts == 0)  
        {
            message = GetResourceString("Intro");
        }
        else if (previousAttempts == 1)  
        {
            message = GetResourceString("Intro2");

    //LOAD USER CONTROL ONE HERE

        }
        else  
        {
            message = GetResourceString("Pass");


    //LOAD USER CONTROL TWO HERE



        }

        return message;
    }

我在默认页面中注册了我的用户控件,如下所示

<%@ Register Src="~/UserControls/AnswerUC1.ascx" TagPrefix="UC1" TagName="ANSWERUC1" %>
<%@ Register Src="~/UserControls/AnswerUC2.ascx" TagPrefix="UC2" TagName="AnswerUC2" %>

我怎样才能调用它并通过我的CS文件加载它?

2 个答案:

答案 0 :(得分:1)

假设您要将其加载到占位符控件(placeHolder1),

placeHolder1.Controls.Add((ANSWERUC1)LoadControl("~/UserControls/AnswerUC1.ascx"));

有一个MSDN article可以通过示例详细解释这一点。

答案 1 :(得分:0)

您必须在.aspx文件中使用此控件。您的控件必须作为服务器运行!并给他们独特的身份。现在,您可以通过这些独特的ID在代码隐藏中访问它们!