This post shows a generic method that can return the HTML string generated by ASP.NET server control after the rendering.
string GetRenderedOutput<T>(T control) where T : Control
{
StringBuilder builder = new StringBuilder();
using (StringWriter sWriter = new StringWriter(builder))
using (Html32TextWriter writer = new Html32TextWriter(sWriter))
{
control.RenderControl(writer);
}
return builder.ToString();
}
