ASP.NET:获取.ascx的标记

Jam*_*ead 1 asp.net user-controls

假设我有一个.ascx用户控件.如何将其HTML标记添加到字符串中?

wom*_*omp 6

一旦使用LoadControl()方法将其放入页面,您就可以通过调用其上的Render()方法来获取HTML.它需要一个HtmlTextWriter来编写,但构造起来相当简单:

var userControl = (userControlType)Page.LoadControl( ....ascx);
StringBuilder sb = new StringBuilder();
StringWriter SW = new StringWriter(SB);
HtmlTextWriter htw = new HtmlTextWriter(new StringWriter(sb));
userControl.RenderControl(htw);

string html = sb.ToString();
Run Code Online (Sandbox Code Playgroud)

如果您不在页面上下文中,还有其他方法可以执行此操作.