ControlBuilder.HasAspCode 属性

定义

获取一个值,该值指示控件是否包含任何代码块。Gets a value indicating whether the control contains any code blocks.

public:
 property bool HasAspCode { bool get(); };
public:
 virtual property bool HasAspCode { bool get(); };
public bool HasAspCode { get; }
public virtual bool HasAspCode { get; }
member this.HasAspCode : bool
Public ReadOnly Property HasAspCode As Boolean
Public Overridable ReadOnly Property HasAspCode As Boolean

属性值

如果控件包含至少一个代码块,则为 true;否则为 falsetrue if the control contains at least one code block; otherwise, false.

示例

此示例将重写 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 方法。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

适用于