• 締切済み

RenderControl メソッド?

ASP.NET(C#) 初心者です。 ずばりRenderControl()がなにをするものか分かりません。 簡単なサンプルで教えてください。

みんなの回答

  • todo36
  • ベストアンサー率58% (728/1234)
回答No.2

ASP.NET ページのライフ サイクルの概要 http://msdn.microsoft.com/ja-jp/library/ms178472(v=vs.80).aspx HTMLをResponseに出力することをRenderといいます。 ページのRenderが発生したときに、コントロールのRenderControlメソッドが呼ばれます。 RenderControlは自動的に呼ばれるもので、ページ(aspx)開発者が使う機会はまずありません。 RenderControlは、カスタムコントロールを作成するときにoverrideして実装するものです。 // 超軽量ラベル public class MyLabel : Control {  public string Text  {   get { return ViewState["text"] as string ?? ""; }   set { ViewState["text"] = value; }  }  public override void RenderControl(HtmlTextWriter writer)  {   writer.Write("<span>" + Text + "</span>");  } }

az2001
質問者

お礼

サンプルコードとライフサイクルの概要とても役にたちました。ありがとうございます。

  • onos
  • ベストアンサー率81% (127/155)
回答No.1

ASP.NETのWebフォームではaspxページにコントロールを貼りつけていきますよね。 このコントロールに対してHTMLを生成しなさい、と命令するのがRenderControlになります。 コントロールはそのタイミングで自分のプロパティをみて、適切なHTMLを生成します。 基本的にはフレームワークが呼び出すメソッドなので、直接プログラマがこのメソッドを使うことはないと考えてよいと思います。

az2001
質問者

お礼

RenderControlは、コントロールにHTMLを生成しなさいというものなのですね。回答2の方もそういっていますが、プログラマが直接使うことはなさそうなので、初心者の私はあまり深入りしないほうがよさそうです。 ありがとうございました。

関連するQ&A

専門家に質問してみよう