ControlBuilder.OnAppendToParentBuilder(ControlBuilder) 메서드

정의

내부 텍스트가 부모 컨트롤 작성기에 추가되고 있음을 ControlBuilder에 알립니다.Notifies the ControlBuilder that it is being added to a parent control builder.

public:
 virtual void OnAppendToParentBuilder(System::Web::UI::ControlBuilder ^ parentBuilder);
public virtual void OnAppendToParentBuilder (System.Web.UI.ControlBuilder parentBuilder);
abstract member OnAppendToParentBuilder : System.Web.UI.ControlBuilder -> unit
override this.OnAppendToParentBuilder : System.Web.UI.ControlBuilder -> unit
Public Overridable Sub OnAppendToParentBuilder (parentBuilder As ControlBuilder)

매개 변수

parentBuilder
ControlBuilder

현재 작성기가 추가되는 ControlBuilder 개체입니다.The ControlBuilder object to which the current builder is added.

예제

이 예제에서는 OnAppendToParentBuilder 메서드를 재정의 하 여 ControlType 속성을 확인 하 여이 작성기가 적용 되는 컨트롤의 형식을 결정 합니다.This example overrides the OnAppendToParentBuilder method to check the ControlType property to determine what type of control this builder is applied to. CustomTextBox경우 작성기는 HasAspCode 속성 값이 컨트롤에 포함 되는지 여부를 확인 합니다.If it is a CustomTextBox, the builder checks whether the value of the HasAspCode property is included in the control. 이 경우 HasBody 메서드가 호출 되지 않으면 예외가 throw 됩니다.If so, an exception is thrown, if not the HasBody method is called.

using System;
using System.Web.UI;
using System.Web;
using System.Security.Permissions;

namespace ASPNET.Samples
{
    [
    AspNetHostingPermission(SecurityAction.Demand,
        Level=AspNetHostingPermissionLevel.Minimal)
    ]
    public class AppendControlBuilder : ControlBuilder
    {
        // Override the OnAppendToParentBuilder method.
        public override void OnAppendToParentBuilder(ControlBuilder parentBuilder)
        {
            // Check whether the type of the control this builder
            // is applied to is CustomTextBox. If so, check whether
            // ASP code blocks exist in the control. If so, call
            // throw an Exception, if not, call the HasBody method.        
            if (ControlType == Type.GetType("CustomTextBox"))
            {
                if (HasAspCode)
                    throw new Exception("This control cannot contain code blocks.");
                else
                    HasBody();
            }
        }
    }
}
Imports System.Web.UI
Imports System.Web
Imports System.Security.Permissions

Namespace ASPNET.Samples

   <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
   Public NotInheritable Class AppendControlBuilder
      Inherits ControlBuilder

      ' Override the OnAppendToParentBuilder method.
      Overrides Public Sub OnAppendToParentBuilder( _
         ByVal parentBuilder As ControlBuilder _
      )
            ' Check whether the type of the control this builder
            ' is applied to is CustomTextBox. If so, check whether
            ' ASP code blocks exist in the control. If so, call
            ' throw an Exception, if not, call the HasBody method.        
            If ControlType Is Type.GetType("CustomTextBox") Then
                If HasAspCode = True Then
                    Throw New Exception("This control cannot contain code blocks.")
                Else
                    HasBody()
                End If
            End If

        End Sub

   End Class

End Namespace

적용 대상