コントロールに開始タグと終了タグの両方のタグを含めるかどうかを決定します。このメソッドは ASP.NET ページ フレームワークによって呼び出されます。
名前空間: System.Web.UI
アセンブリ: System.Web (system.web.dll 内)
構文
'宣言
Public Overridable Function HasBody As Boolean
'使用
Dim instance As ControlBuilder
Dim returnValue As Boolean
returnValue = instance.HasBody
public virtual bool HasBody ()
public:
virtual bool HasBody ()
public boolean HasBody ()
public function HasBody () : boolean
適用できません。
戻り値
コントロールに開始タグと終了タグがある場合は true。それ以外の場合は false。
解説
このメソッドは、解析中に ASP.NET ページ フレームワークによって呼び出されるもので、コードから直接使用するためのものではありません。
使用例
この例では、ControlType プロパティをチェックして、このビルダが適用されるコントロールの型を判断するように OnAppendToParentBuilder メソッドがオーバーライドされています。CustomTextBox
の場合、ビルダは、HasAspCode プロパティの値がそのコントロールに含まれているかどうかを確認します。コード ブロックが含まれている場合、例外がスローされ、含まれていない場合、HasBody メソッドが呼び出されます。
Imports System
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
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();
}
}
}
}
プラットフォーム
Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition
Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。
バージョン情報
.NET Framework
サポート対象 : 3.0,2.0,1.1,1.0