将.net 自定义用户控件转为html

    技术2025-03-29  14

    public class ViewManager<T> : IDisposable where T : UserControl { private Page m_pageHolder; private T ctrl; /// <summary> /// 当前ViewManager已加载的用户控件。 /// </summary> public T UserControl { get { return ctrl; } } public ViewManager() { } public ViewManager(string ascxFile) : this() { LoadViewControl(ascxFile); } ~ViewManager() { Dispose(); } public T LoadViewControl(string path) { this.m_pageHolder = new Page(); ctrl = (T)this.m_pageHolder.LoadControl(path); return ctrl; } public string RenderView() { return RenderView(ctrl); } public string RenderView(T control) { StringWriter output = new StringWriter(); this.m_pageHolder.Controls.Add(control); HttpContext.Current.Server.Execute(this.m_pageHolder, output, true); return output.ToString(); } #region IDisposable 成员 public void Dispose() { m_pageHolder.Dispose(); ctrl.Dispose(); } #endregion } 

    最新回复(0)