Control.RenderControl 方法

定義

輸出伺服器控制項內容,並在啟用追蹤功能的情況下,儲存有關控制項的追蹤資訊。

多載

RenderControl(HtmlTextWriter)

將伺服器控制項內容輸出至提供的 HtmlTextWriter 物件,並在啟用追蹤時儲存控制項的追蹤資訊。

RenderControl(HtmlTextWriter, ControlAdapter)

使用提供的 HtmlTextWriter 物件,輸出伺服器控制項內容至提供的 ControlAdapter 物件。

RenderControl(HtmlTextWriter)

將伺服器控制項內容輸出至提供的 HtmlTextWriter 物件,並在啟用追蹤時儲存控制項的追蹤資訊。

public:
 void RenderControl(System::Web::UI::HtmlTextWriter ^ writer);
public:
 virtual void RenderControl(System::Web::UI::HtmlTextWriter ^ writer);
public void RenderControl (System.Web.UI.HtmlTextWriter writer);
public virtual void RenderControl (System.Web.UI.HtmlTextWriter writer);
member this.RenderControl : System.Web.UI.HtmlTextWriter -> unit
abstract member RenderControl : System.Web.UI.HtmlTextWriter -> unit
override this.RenderControl : System.Web.UI.HtmlTextWriter -> unit
Public Sub RenderControl (writer As HtmlTextWriter)
Public Overridable Sub RenderControl (writer As HtmlTextWriter)

參數

writer
HtmlTextWriter

接收控制項內容的 HtmlTextWriter 物件。

範例

下列範例會 RenderChildren 覆寫自訂伺服器控制項中的 方法。 它會判斷目前控制項在其 物件中 ControlCollection 是否有任何子控制項。 如果是,它會使用 Count 屬性逐一查看集合。 當它遇到每個子控制項時,它會使用 RenderControl 方法,將子控制項及其所有子控制項轉譯到包含的頁面。 XhtmlTextWriter傳遞給這個方法的物件是由 Render 方法具現化。

// Override default implementation to Render children according to needs. 
protected override void RenderChildren(HtmlTextWriter output)
{
   if (HasControls())
   {
      // Render Children in reverse order.
      for(int i = Controls.Count - 1; i >= 0; --i)
      {
         Controls[i].RenderControl(output);
      }
   }         
}

protected override void Render(HtmlTextWriter output)
{       
   output.Write("<br>Message from Control : " + Message);       
   output.Write("Showing Custom controls created in reverse" +
                                                    "order");         
   // Render Controls.
   RenderChildren(output);
}
' Override default implementation to Render children according to needs. 
      Protected Overrides Sub RenderChildren(output As HtmlTextWriter)
         If HasControls() Then
            ' Render Children in reverse order.
            Dim i As Integer

            For i = Controls.Count - 1 To 0 Step -1
               Controls(i).RenderControl(output)
            Next

         End If
      End Sub
      
      
      Protected Overrides Sub Render(output As HtmlTextWriter)
         output.Write(("<br>Message from Control : " + Message))
         output.Write(("Showing Custom controls created in reverse" + "order"))
         ' Render Controls.
         RenderChildren(output)
      End Sub
   End Class

備註

如果伺服器控制項的 Visible 屬性設定為 true ,這個方法會判斷是否啟用頁面的追蹤。 如果是,它會儲存與控制項相關聯的追蹤資訊,並將伺服器控制項內容轉譯至頁面。

這個方法會在轉譯期間由頁面自動呼叫,但可由自訂控制項開發人員覆寫。

另請參閱

適用於

RenderControl(HtmlTextWriter, ControlAdapter)

使用提供的 HtmlTextWriter 物件,輸出伺服器控制項內容至提供的 ControlAdapter 物件。

protected:
 void RenderControl(System::Web::UI::HtmlTextWriter ^ writer, System::Web::UI::Adapters::ControlAdapter ^ adapter);
protected void RenderControl (System.Web.UI.HtmlTextWriter writer, System.Web.UI.Adapters.ControlAdapter adapter);
member this.RenderControl : System.Web.UI.HtmlTextWriter * System.Web.UI.Adapters.ControlAdapter -> unit
Protected Sub RenderControl (writer As HtmlTextWriter, adapter As ControlAdapter)

參數

writer
HtmlTextWriter

接收控制項內容的 HtmlTextWriter

adapter
ControlAdapter

定義呈現的 ControlAdapter

備註

ASP.NET 網頁可用於各種裝置和瀏覽器,這些裝置和瀏覽器都可以從 Web 要求資訊。 屬性 Adapter 會傳 ControlAdapter 回 物件,這個物件會轉譯要求裝置或瀏覽器畫面上的控制項。

如需配接器的詳細資訊,請參閱 調適型控制項行為的架構概觀

如果伺服器控制項的 Visible 屬性設定 true 為 ,且已啟用頁面的追蹤,則會擷取與控制項相關聯的追蹤資訊。

給繼承者的注意事項

RenderControl(HtmlTextWriter, ControlAdapter) 自訂控制項中覆寫 方法時,請呼叫基類方法,以確保正確擷取追蹤資訊。

另請參閱

適用於