Asp.net 动态加载用户自定义控件,并转换成HTML代码
时间:2021-07-01 10:21:17
帮助过:7人阅读
如果页面单纯的使用js来创建,要写大量的代码,而且不直观。
在asp.net中,其实我们可以创建用户自定义控件,通过Ajax请求返回用户自定义控件HTML代码。
代码如下:
public static string RangerUsControl(string controlName)
{
StringBuilder build = new StringBuilder();
HtmlTextWriter htmlWriter = new HtmlTextWriter(new StringWriter(build));
UserControl uc = new UserControl();
Control ctrl=uc.LoadControl(controlName+".ascx");//加载用户定义控件 TextBox txtBox1 = ctrl.FindControl("TextBox1") as TextBox;//获得id为“TextBox1”的控件
txtBox1.Text = "测试"; //给控件初始化 string result;
try
{
ctrl.RenderControl(htmlWriter);
}
catch { }
finally
{
htmlWriter.Flush();
result=build.ToString();
}
return result;//返回控件的HTML代码
}
htmlWriter.Flush();