ControlBuilder.OnAppendToParentBuilder(ControlBuilder) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
親コントロール ビルダーに追加されることを ControlBuilder に通知します。
public:
virtual void OnAppendToParentBuilder(System::Web::UI::ControlBuilder ^ parentBuilder);
public virtual void OnAppendToParentBuilder (System.Web.UI.ControlBuilder parentBuilder);
abstract member OnAppendToParentBuilder : System.Web.UI.ControlBuilder -> unit
override this.OnAppendToParentBuilder : System.Web.UI.ControlBuilder -> unit
Public Overridable Sub OnAppendToParentBuilder (parentBuilder As ControlBuilder)
パラメーター
- parentBuilder
- ControlBuilder
現在のビルダーの追加先の ControlBuilder オブジェクト。
例
次の使用例は、プロパティを OnAppendToParentBuilder チェックして、このビルダーが ControlType 適用されるコントロールの種類を決定するメソッドをオーバーライドします。 これが a 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