我有一个自定义控件,我需要在另一个自定义控件中使用它。我已经在服务器端编写了所有代码(没有HTML)。谁能告诉我如何在代码背后使用htmlTextWriter编写下面的代码行,如何注册这个控件,或者如何在另一个html是从代码背后编写的地方编写自定义控件。
发布于 2008-11-18 07:36:54
首先,构建一个简单的自定义web控件:
namespace My.Controls
{
public class InnerControl : Control
{
protected override void Render(HtmlTextWriter writer)
{
writer.WriteLine("<h1>Inner Control</h1>");
}
}
}然后构建包含并呈现第一个web控件的第二个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" />发布于 2008-11-18 09:55:10
感谢它起作用了..我只漏了一行--
InnerControl.RenderControl(编写者);
https://stackoverflow.com/questions/298039
复制相似问题