ControlBuilder.HasBody Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет наличие открывающего и закрывающего тега элемента управления. Этот метод вызывается платформой страницы 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 страниц во время синтаксического анализа и не предназначен для вызова непосредственно в коде.