ControlBuilder.HasBody 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
确定控件是否同时具有开始标记和结束标记。 此方法由 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
返回
如果控件同时具有开始标记和结束标记,则为 true
;否则为 false
。
示例
此示例重写 方法以 OnAppendToParentBuilder 检查 ControlType 属性,以确定此生成器应用于哪种类型的控件。 如果是 , CustomTextBox
则生成器会检查 属性的值 HasAspCode 是否包含在 控件中。 如果是这样,则会引发异常,如果不是, HasBody 则调用 方法。
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
注解
此方法在分析期间由 ASP.NET 页框架调用,不打算在代码中直接调用。