HierarchicalDataBoundControlAdapter 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
針對特定瀏覽器要求,自訂與這個控制項配置器關聯的 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 類別,以轉譯系結至 XmlDataSource 對象的階層TreeView式控件。
此程式代碼範例包含四個物件:
衍生自類別的 HierarchicalDataBoundControlAdapter 配接器。
包含 TreeView 控制項和裝置特定內容的.aspx檔案。
將適配卡連結至裝置類型的瀏覽器檔案。
包含員工階層式清單的 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 |
取得值,表示 Web 控制器及其所有父控制項是否都已啟用。 (繼承來源 WebControlAdapter) |
Page |
取得對頁面的參考 (與此配置器相關聯的控制項便存在於此頁面中)。 (繼承來源 ControlAdapter) |
PageAdapter |
取得對此頁的頁面配置器的參考 (關聯的控制項便存在於此頁面中)。 (繼承來源 ControlAdapter) |