HierarchicalDataBoundControlAdapter Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Настраивает поведение объекта HierarchicalDataBoundControl, с которым связан данный адаптер элемента управления, в соответствии с запросами конкретного браузера.
public ref class HierarchicalDataBoundControlAdapter : System::Web::UI::WebControls::Adapters::WebControlAdapter
public class HierarchicalDataBoundControlAdapter : System.Web.UI.WebControls.Adapters.WebControlAdapter
type HierarchicalDataBoundControlAdapter = class
inherit WebControlAdapter
Public Class HierarchicalDataBoundControlAdapter
Inherits WebControlAdapter
- Наследование
Примеры
В следующем примере кода показано, как расширить HierarchicalDataBoundControlAdapter класс для отрисовки иерархического TreeView элемента управления, привязанного к объекту XmlDataSource .
Этот пример кода содержит четыре объекта:
Адаптер, производный HierarchicalDataBoundControlAdapter от класса .
Файл .aspx, включающий элемент управления и содержимое TreeView для конкретного устройства.
Файл браузера для связи адаптера с типом устройства.
XML-файл, содержащий иерархический список сотрудников.
Этот пример кода состоит из четырех сегментов кода. В первом сегменте кода показано, как расширить HierarchicalDataBoundControlAdapter класс .
using System;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;
namespace Contoso
{
[AspNetHostingPermission(
SecurityAction.Demand,
Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(
SecurityAction.InheritanceDemand,
Level = AspNetHostingPermissionLevel.Minimal)]
public class HierarchicalTreeViewAdapter :
System.Web.UI.WebControls.Adapters.HierarchicalDataBoundControlAdapter
{
// Return a strongly-typed TreeView control for adapter.
protected new System.Web.UI.WebControls.TreeView Control
{
get
{
return (System.Web.UI.WebControls.TreeView)base.Control;
}
}
// Verify the DataSourceID property is set prior to binding data.
protected override void PerformDataBinding()
{
if (Control.DataSourceID != null)
{
base.PerformDataBinding();
}
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Contoso
<AspNetHostingPermission(SecurityAction.Demand, _
Level:=AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission(SecurityAction.InheritanceDemand, _
Level:=AspNetHostingPermissionLevel.Minimal)> _
Public Class HierarchicalTreeViewAdapter
Inherits _
System.Web.UI.WebControls.Adapters.HierarchicalDataBoundControlAdapter
' Return a strongly-typed TreeView control for adapter.
Protected Overloads ReadOnly Property Control() As _
System.Web.UI.WebControls.TreeView
Get
Return CType( _
MyBase.Control, _
System.Web.UI.WebControls.TreeView)
End Get
End Property
' Verify the DataSourceID property is set prior to binding data.
Protected Overrides Sub PerformDataBinding()
If (Not Control.DataSourceID Is Nothing) Then
MyBase.PerformDataBinding()
End If
End Sub
End Class
End Namespace
Во втором сегменте кода показано, как объявить TreeView для привязки к источнику данных XML.
<%@ page language="c#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HierarchicalDataBoundControl Adapter</title>
</head>
<body>
<form id="Form1" runat="server">
<asp:TreeView ID="TreeView1"
Runat="server"
DataSourceID="XmlDataSource1">
<DataBindings>
<asp:TreeNodeBinding
DataMember="employees" Text="Employees"/>
<asp:TreeNodeBinding
DataMember="employee" TextField="id" />
<asp:TreeNodeBinding
DataMember="name" TextField="fullname" />
</DataBindings>
</asp:TreeView>
<asp:XmlDataSource ID="XmlDataSource1"
Runat="server"
DataFile="employees.xml" />
<br />
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>HierarchicalDataBoundControl Adapter</title>
</head>
<body>
<form id="Form1" runat="server">
<asp:TreeView ID="TreeView1"
Runat="server"
DataSourceID="XmlDataSource1">
<DataBindings>
<asp:TreeNodeBinding
DataMember="employees" Text="Employees"/>
<asp:TreeNodeBinding
DataMember="employee" TextField="id" />
<asp:TreeNodeBinding
DataMember="name" TextField="fullname" />
</DataBindings>
</asp:TreeView>
<asp:XmlDataSource ID="XmlDataSource1"
Runat="server"
DataFile="employees.xml" />
<br />
</form>
</body>
</html>
В третьем сегменте кода показано, как связать TreeView элемент управления с пользовательским адаптером для браузеров, работающих в Windows CE.
Последний сегмент кода предоставляет XML-данные, к которым TreeView привязывается элемент управления.
Комментарии
Класс HierarchicalDataBoundControlAdapter адаптирует связанный HierarchicalDataBoundControl элемент управления для изменения разметки или поведения по умолчанию для определенного браузера. Вы можете расширить класс для HierarchicalDataBoundControlAdapter дальнейшей настройки отрисовки HierarchicalDataBoundControl элемента управления.
Элемент HierarchicalDataBoundControl управления привязывается к источнику данных и создает свой пользовательский интерфейс (или иерархию дочерних элементов управления, как правило), перечисляя элементы в источнике данных, к которому он привязан. Дополнительные сведения об иерархических элементах управления с привязкой к данным см. в разделе HierarchicalDataBoundControl.
Адаптеры управления are.NET компоненты, управляющие одним или несколькими этапами жизненного цикла элемента управления для определенного браузера. HierarchicalDataBoundControlAdapter Расширение класса обеспечивает доступ к этапам жизненного HierarchicalDataBoundControl цикла элемента управления. Дополнительные сведения см. в статье Архитектурный обзор поведения адаптивного элемента управления.
Первоначальный запрос адаптера заставляет .NET Framework искать сопоставленный адаптер для элемента управления, учитывая характеристики запрашивающего браузера. Файлы определения браузера используются классом HttpBrowserCapabilities для определения характеристик клиентского браузера и сопоставления адаптера с типом браузера.
Конструкторы
HierarchicalDataBoundControlAdapter() |
Инициализирует новый экземпляр класса HierarchicalDataBoundControlAdapter. |
Свойства
Browser |
Возвращает ссылку на возможности клиентского браузера, создающего текущий HTTP-запрос. (Унаследовано от ControlAdapter) |
Control |
Извлекает строго типизированную ссылку на элемент управления HierarchicalDataBoundControl, связанный с объектом HierarchicalDataBoundControlAdapter. |
IsEnabled |
Возвращает значение, показывающее доступность веб-элемента управления и всех его родительских элементов управления. (Унаследовано от WebControlAdapter) |
Page |
Возвращает ссылку на страницу, на которой располагается элемент управления, связанный с данным адаптером. (Унаследовано от ControlAdapter) |
PageAdapter |
Возвращает ссылку на адаптер страницы для страницы, на которой располагается связанный элемент управления. (Унаследовано от ControlAdapter) |
Методы
BeginRender(HtmlTextWriter) |
Вызывается до отрисовки элемента управления. В производном классе адаптеров генерируются открывающие теги, которые необходимы для определенной цели, но не требуются для HTML-браузеров. (Унаследовано от ControlAdapter) |
CreateChildControls() |
Создает целевые дочерние элементы управления для составного элемента управления. (Унаследовано от ControlAdapter) |
EndRender(HtmlTextWriter) |
Вызывается после отрисовки элемента управления. В производном классе адаптеров генерируются закрывающие теги, которые необходимы для определенной цели, но не требуются для HTML-браузеров. (Унаследовано от ControlAdapter) |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
LoadAdapterControlState(Object) |
Загружает сведения о состоянии адаптера элемента управления, которые были сохранены SaveAdapterControlState() во время предыдущего запроса страницы, на которой размещен элемент управления, связанный с адаптером элемента управления. (Унаследовано от ControlAdapter) |
LoadAdapterViewState(Object) |
Загружает сведения о состоянии просмотра адаптера, сохраненные объектом SaveAdapterViewState() во время предыдущего запроса страницы, на которой размещен элемент управления, связанный с адаптером элемента управления. (Унаследовано от ControlAdapter) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnInit(EventArgs) |
Переопределяет метод OnInit(EventArgs) для связанного элемента управления. (Унаследовано от ControlAdapter) |
OnLoad(EventArgs) |
Переопределяет метод OnLoad(EventArgs) для связанного элемента управления. (Унаследовано от ControlAdapter) |
OnPreRender(EventArgs) |
Переопределяет метод OnPreRender(EventArgs) для связанного элемента управления. (Унаследовано от ControlAdapter) |
OnUnload(EventArgs) |
Переопределяет метод OnUnload(EventArgs) для связанного элемента управления. (Унаследовано от ControlAdapter) |
PerformDataBinding() |
Связывает с адаптером данные в источнике данных связанного иерархического элемента управления, связанного с данными. |
Render(HtmlTextWriter) |
Создает целевую разметку для элемента управления, к которому присоединяется адаптер управления. (Унаследовано от WebControlAdapter) |
RenderBeginTag(HtmlTextWriter) |
Создает начальный тег веб-элемента управления в разметке для передачи в целевой браузер. (Унаследовано от WebControlAdapter) |
RenderChildren(HtmlTextWriter) |
Создает целевую разметку для дочерних элементов управления в составном элементе управления, к которому присоединяется адаптер элемента управления. (Унаследовано от ControlAdapter) |
RenderContents(HtmlTextWriter) |
Создает для веб-элемента управления, к которому присоединен соответствующий адаптер, особую внутреннюю разметку, характерную для целевого объекта. (Унаследовано от WebControlAdapter) |
RenderEndTag(HtmlTextWriter) |
Создает закрывающий тег веб-элемента управления в разметке для передачи в целевой браузер. (Унаследовано от WebControlAdapter) |
SaveAdapterControlState() |
Сохраняет сведения о состоянии элемента управления для адаптера элемента управления. (Унаследовано от ControlAdapter) |
SaveAdapterViewState() |
Сохраняет сведения о состоянии просмотра для адаптера элемента управления. (Унаследовано от ControlAdapter) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |