Maison  >  Article  >  interface Web  >  js obtient le contenu UserControl pour faciliter l'orthographe des compétences html_javascript

js obtient le contenu UserControl pour faciliter l'orthographe des compétences html_javascript

WBOY
WBOYoriginal
2016-05-16 16:32:121484parcourir

J'ai lu l'article de Lao Zhao aujourd'hui mais je n'ai pas pu le déboguer.

Copier le code Le code est le suivant :

[AjaxPro.AjaxMethod]
chaîne publique gethtml()
{

UcViewHelper viewManager = new UcViewHelper();
Contrôle UserControl = viewManager.LoadViewControl("~/uc/giftoutmodel.ascx");
string s=viewManager.RenderView(control);

retourner s;

>

classe publique UcViewHelper où T : UserControl
{
MaPage privée m_pageHolder ;
public T LoadViewControl (chemin de chaîne)
{
m_pageHolder = new MaPage();
return (T)m_pageHolder.LoadControl(path);
>
chaîne publique RenderView (contrôle T)
{
Sortie StringWriter = new StringWriter();

this.m_pageHolder.Controls.Add(control);
HttpContext.Current.Server.Execute(this.m_pageHolder, sortie, false);

retourner la sortie.ToString();
>
>

classe MaPage : Page
{
public override void VerifyRenderingInServerForm(Control control)
{
//if (le contrôle est GridView || le contrôle est UserControl)
//{
// retour ;
//}
//base.VerifyRenderingInServerForm(control);
>
>

Test réussi.

Si :

Copier le code Le code est le suivant :

[AjaxPro.AjaxMethod]
chaîne publique gethtml()
{
chaîne s = getString();
retourner s;

>
chaîne publique getString()
{
Contrôle UserControl = LoadControl("~/uc/giftoutmodel.ascx") as UserControl;
StringWriter tw = new StringWriter();
HtmlTextWriter écrivain = new HtmlTextWriter(tw);
control.RenderControl(écrivain);
returnwriter.InnerWriter.ToString();
>

public override void VerifyRenderingInServerForm(Control control)
{
// si (le contrôle est GridView || le contrôle est UserControl)
// {
// retour ;
//}
//base.VerifyRenderingInServerForm(control);
>

La raison est qu'il s'avère que le code de Lao Zhao a hérité de Page et a ensuite utilisé VerifyRenderingInServerForm pour vérifier. Deuxièmement, mon code n'a pas hérité de Page et a directement utilisé VerifyRenderingInServerForm, donc cela provoquerait

.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn