js獲取UserControl內(nèi)容為拼html時提供方便
今天看了老趙的文章可是怎么都調(diào)試不通過。
[AjaxPro.AjaxMethod]
public string gethtml()
{
UcViewHelper<UserControl> viewManager = new UcViewHelper<UserControl>();
UserControl control = viewManager.LoadViewControl("~/uc/giftoutmodel.ascx");
string s=viewManager.RenderView(control);
return s;
}
public class UcViewHelper<T> where T : UserControl
{
private MyPage m_pageHolder;
public T LoadViewControl(string path)
{
m_pageHolder = new MyPage();
return (T)m_pageHolder.LoadControl(path);
}
public string RenderView(T control)
{
StringWriter output = new StringWriter();
this.m_pageHolder.Controls.Add(control);
HttpContext.Current.Server.Execute(this.m_pageHolder, output, false);
return output.ToString();
}
}
class MyPage : Page
{
public override void VerifyRenderingInServerForm(Control control)
{
//if (control is GridView || control is UserControl)
//{
// return;
//}
//base.VerifyRenderingInServerForm(control);
}
}
測試通過。
如果:
[AjaxPro.AjaxMethod]
public string gethtml()
{
string s = getString();
return s;
}
public string getString()
{
UserControl control = LoadControl("~/uc/giftoutmodel.ascx") as UserControl;
StringWriter tw = new StringWriter();
HtmlTextWriter writer = new HtmlTextWriter(tw);
control.RenderControl(writer);
return writer.InnerWriter.ToString();
}
public override void VerifyRenderingInServerForm(Control control)
{
// if (control is GridView || control is UserControl)
// {
// return;
//}
//base.VerifyRenderingInServerForm(control);
}
究其原因,原來是老趙的代碼 繼承了Page 然后使用VerifyRenderingInServerForm驗(yàn)證,二我的代碼沒有繼承Page直接使用VerifyRenderingInServerForm 所以會造成
相關(guān)文章
JS實(shí)用技巧小結(jié)(屏蔽錯誤、div滾動條設(shè)置、背景圖片位置等)
這篇文章主要介紹了JS實(shí)用技巧,包括常見的js屏蔽錯誤、div滾動條設(shè)置以及背景圖片位置等,代碼簡潔易懂,非常實(shí)用,需要的朋友可以參考下2016-06-06.net JS模擬Repeater控件的實(shí)現(xiàn)代碼
一個模板控件規(guī)定了它的模板語法和js api,這是一個repeater控件的JS實(shí)現(xiàn):2013-06-06小程序從手動埋點(diǎn)到自動埋點(diǎn)的實(shí)現(xiàn)方法
這篇文章主要介紹了小程序從手動埋點(diǎn)到自動埋點(diǎn)的實(shí)現(xiàn)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-01-01JavaScript實(shí)現(xiàn)簡單計(jì)算器
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)簡單計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03原生JavaScript實(shí)現(xiàn)進(jìn)度條
這篇文章主要為大家詳細(xì)介紹了原生JavaScript實(shí)現(xiàn)進(jìn)度條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-02-02js實(shí)現(xiàn)文件流式下載文件方法詳解及完整代碼
這篇文章主要介紹了用js實(shí)現(xiàn)讀取文件流并下載到本地的方法,也就是我們經(jīng)常說的使用js下載文件需要的朋友可以參考下2022-12-12使用webpack/gulp構(gòu)建TypeScript項(xiàng)目的方法示例
這篇文章主要介紹了使用webpack/gulp構(gòu)建TypeScript項(xiàng)目的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12