다음을 통해 공유


ControlBuilder.HasBody 메서드

정의

컨트롤에 여는 태그와 닫는 태그가 있는지 여부를 결정합니다. 이 메서드는 ASP.NET 페이지 프레임워크에서 호출합니다.

public:
 virtual bool HasBody();
public virtual bool HasBody ();
abstract member HasBody : unit -> bool
override this.HasBody : unit -> bool
Public Overridable Function HasBody () As Boolean

반환

Boolean

컨트롤에 여는 태그와 닫는 태그가 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

예제

이 예제에서는 속성을 확인 ControlType 하려면이 작성기가 적용 되는 컨트롤의 형식을 확인 하는 메서드를 재정 OnAppendToParentBuilder 의 합니다. 이 속성이 CustomTextBox있으면 작성기는 속성 값이 컨트롤에 HasAspCode 포함되어 있는지 여부를 확인합니다. 이 경우 메서드가 호출되지 않으면 예외가 HasBody throw됩니다.

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

설명

이 메서드는 구문 분석하는 동안 ASP.NET 페이지 프레임워크에서 호출되며 코드에서 직접 호출되지 않습니다.

적용 대상