ControlBuilder.HasAspCode Property

Definition

Gets a value indicating whether the control contains any code blocks.

C#
public bool HasAspCode { get; }
C#
public virtual bool HasAspCode { get; }

Property Value

true if the control contains at least one code block; otherwise, false.

Examples

This example overrides the OnAppendToParentBuilder method to check the ControlType property to determine what type of control this builder is applied to. If it is a CustomTextBox, the builder checks whether the value of the HasAspCode property is included in the control. If so, an exception is thrown, if not the HasBody method is called.

C#
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();
            }
        }
    }
}

Applies to

Product Versions
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1