Condividi tramite


ControlBuilder.HasBody Metodo

Definizione

Determina se un controllo dispone sia di un tag di apertura che di chiusura. Questo metodo viene chiamato dal framework di pagina 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

Restituisce

true se il controllo ha un tag di apertura e chiusura; in caso contrario, false.

Esempio

In questo esempio viene eseguito l'override del OnAppendToParentBuilder metodo per controllare la ControlType proprietà per determinare il tipo di controllo a cui viene applicato questo generatore. Se è un oggetto CustomTextBox, il generatore verifica se il valore della HasAspCode proprietà è incluso nel controllo . In tal caso, viene generata un'eccezione, se non viene chiamato il HasBody metodo .

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

Commenti

Questo metodo viene chiamato dal framework della pagina ASP.NET durante l'analisi e non deve essere chiamato direttamente nel codice.

Si applica a