Поделиться через


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

Возвращаемое значение

true Значение , если элемент управления имеет открывающий и закрывающий тег; falseв противном случае .

Примеры

В этом примере метод переопределяет OnAppendToParentBuilder метод для проверки ControlType свойства, чтобы определить, к каким типам элементов управления применяется построитель. Если это CustomTextBoxзначение, построитель проверяет, входит ли значение HasAspCode свойства в элемент управления. В этом случае создается исключение, если метод не HasBody вызывается.

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 во время синтаксического анализа и не предназначен для вызова непосредственно в коде.

Применяется к