ControlBuilder.HasBody Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Determines if a control has both an opening and closing tag. This method is called by the ASP.NET page framework.
public:
virtual bool HasBody();
public virtual bool HasBody ();
abstract member HasBody : unit -> bool
override this.HasBody : unit -> bool
Public Overridable Function HasBody () As Boolean
Returns
true
if the control has an opening and closing tag; 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.
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
Remarks
This method is called by the ASP.NET page framework during parsing and is not intended to be called directly in you code.