我创建了一个常规的 ASP.NET 用户控件,包括 ascx 文件。例如:
MyUserControl.ascx
MyUserControl.ascx.cs
然后我尝试在运行时使用类似于以下代码的代码手动呈现控件:
var testMyUserControl = new MyUserControl();
var textWriter =
new HtmlTextWriter(
new System.IO.StringWriter(new StringBuilder()));
testMyUserControl.RenderControl(textWriter);
Console.Write(textWriter.InnerWriter.ToString());
我放入 ASCX 文件中的任何内容似乎都无法呈现 - 静态 HTML 或任何 .NET 控件。
但是,如果我在代码隐藏中覆盖 Render() 方法并手动输出内容,它会呈现。
我在这里想念什么?