Udostępnij za pośrednictwem


ControlBuilder.HasBody Metoda

Definicja

Określa, czy kontrolka ma zarówno tag otwierający, jak i zamykający. Ta metoda jest wywoływana przez platformę stron 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

Zwraca

true jeśli kontrolka ma tag otwierający i zamykający; w przeciwnym razie , false.

Przykłady

W tym przykładzie metoda zastępuje metodę OnAppendToParentBuilder sprawdzania właściwości w ControlType celu określenia, do jakiego typu kontrolki jest stosowany ten konstruktor. Jeśli jest CustomTextBoxto element , konstruktor sprawdza, czy wartość HasAspCode właściwości jest uwzględniona w kontrolce. Jeśli tak, zgłaszany jest wyjątek, jeśli nie jest wywoływana HasBody metoda.

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

Uwagi

Ta metoda jest wywoływana przez platformę ASP.NET strony podczas analizowania i nie ma być wywoływana bezpośrednio w kodzie.

Dotyczy