自定义控制

时间:2008-11-18 07:16:39

标签: asp.net custom-controls

我有一个自定义控件,我需要在另一个自定义控件中使用。我已经在服务器端编写了所有代码(没有HTML)。任何人都可以告诉我如何使用htmlTextWriter在代码后面编写下面的代码行,以及如何注册此控件或如何在其他地方编写自定义控件,其中html是从代码后面编写的。

2 个答案:

答案 0 :(得分:2)

首先,构建一个简单的自定义Web控件:

namespace My.Controls
{
    public class InnerControl : Control
    {
        protected override void Render(HtmlTextWriter writer)
        {
            writer.WriteLine("<h1>Inner Control</h1>");
        }
    }
}

然后构建包含并呈现第一个的第二个Web控件:

namespace My.Controls
{
    public class OuterControl : Control
    {
        protected override void Render(HtmlTextWriter writer)
        {
            writer.WriteLine("<h1>Outer Control</h1>");
            InnerControl innerControl = new InnerControl();
            innerControl.RenderControl(writer);
        }
    }
}

最后,在您的页面上注册控件,并显示它:

<%@ Register TagPrefix="c" Namespace="My.Controls" %>
<c:OuterControl runat="server" />

答案 1 :(得分:0)

谢谢它有效.. 我只缺少一行 -

innerControl.RenderControl(作家);