다음을 통해 공유


WebPartChrome.RenderPartContents(HtmlTextWriter, WebPart) 메서드

정의

머리글과 바닥글을 제외한 WebPart 컨트롤의 주 콘텐츠 영역을 렌더링합니다.

protected:
 virtual void RenderPartContents(System::Web::UI::HtmlTextWriter ^ writer, System::Web::UI::WebControls::WebParts::WebPart ^ webPart);
protected virtual void RenderPartContents (System.Web.UI.HtmlTextWriter writer, System.Web.UI.WebControls.WebParts.WebPart webPart);
abstract member RenderPartContents : System.Web.UI.HtmlTextWriter * System.Web.UI.WebControls.WebParts.WebPart -> unit
override this.RenderPartContents : System.Web.UI.HtmlTextWriter * System.Web.UI.WebControls.WebParts.WebPart -> unit
Protected Overridable Sub RenderPartContents (writer As HtmlTextWriter, webPart As WebPart)

매개 변수

writer
HtmlTextWriter

HtmlTextWriter 내용을 받는 webPart입니다.

webPart
WebPart

현재 렌더링되고 있는 컨트롤입니다.

예제

다음 코드 예제에서는 메서드의 사용을 보여 줍니다 RenderPartContents . 예제를 실행 하는 데 필요한 전체 코드의 예제 섹션을 참조 하세요.를 WebPartChrome 클래스 개요 항목입니다.

코드 예제의 다음 섹션에서는 메서드를 재정의 RenderPartContents 하는 방법을 보여 줍니다. 재정의된 메서드는 컨트롤 본 WebPart 문에 대한 렌더링을 사용자 지정하기 위해 두 가지 작업을 수행합니다. 먼저 컨트롤이 현재 선택되어 있는지 여부를 확인하고, 선택되어 있는 경우 문자열을 작성하고 내용을 렌더링하지 않습니다. 둘째, 컨트롤을 선택하지 않고 컨트롤의 영역이 형식 MyZone이면 메서드가 컨트롤을 렌더링합니다. 이 후자의 검사는 사용자 지정 WebPartChrome 클래스를 개체를 포함 WebPartChrome 하도록 설계된 특정 유형의 WebPartZone 영역에서 컨트롤을 렌더링 WebPart 하는 데만 사용할 수 있도록 하려는 경우에 사용할 수 있습니다.

protected override void RenderPartContents(HtmlTextWriter writer, 
  WebPart part)
{

    if (part == this.WebPartManager.SelectedWebPart)
      HttpContext.Current.Response.Write("<span>Not rendered</span>");
    else
      if(this.Zone.GetType() == typeof(MyZone))
        part.RenderControl(writer);
}
Protected Overrides Sub RenderPartContents _
  (ByVal writer As HtmlTextWriter, ByVal part As WebPart)

  If part Is Me.WebPartManager.SelectedWebPart Then
    HttpContext.Current.Response.Write("<span>Not rendered</span>")
  Else
    If (Me.Zone.GetType() Is GetType(MyZone)) Then
      part.RenderControl(writer)
    End If
  End If

End Sub

브라우저에서 웹 페이지를 로드하는 경우 각 컨트롤의 콘텐츠가 정상적으로 렌더링되는 것을 볼 수 있습니다. 디스플레이 모드 드롭다운 목록 컨트롤에서 디자인을 선택하여 페이지를 디자인 모드로 전환하고 컨트롤 중 하나를 WebPartZone2 레이블이 지정된 빈 영역으로 끌어 놓으면 사용자 지정 WebPartChrome 개체가 표준 영역의 렌더링에 사용되지 않으므로 컨트롤의 내용이 다르게 렌더링됩니다. 이는 이전 소스 코드로 인해 클래스 외 MyZone 에 다른 영역과 함께 사용자 지정 WebPartChrome 클래스를 사용하려고 하면 얻을 수 있는 것과 동일한 효과입니다.

설명

합니다 RenderPartContents 메서드를 사용 하면 본문 부분 렌더링을 재정의할 수 있습니다 webPart, 기본 렌더링 하도록 머리글 및 바닥글의 렌더링을 그대로 유지 하면서 합니다.

상속자 참고

선택적으로 재정의할 수는 RenderPartContents(HtmlTextWriter, WebPart) 메서드. 모든 사용자 지정 렌더링을 간단히 수행할 수 있습니다 따라서 것인지 webPart, 호출 및 해당 RenderControl(HtmlTextWriter) 메서드. 연결 오류가 발생할 경우 기본 렌더링을 사용하려는 경우 먼저 기본 메서드를 호출한 다음 기본 메서드에서 반환되는 메서드를 사용자 지정 writer 합니다.

적용 대상

추가 정보