MenuItemBinding.Depth Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau mengatur kedalaman menu tempat MenuItemBinding objek diterapkan.
public:
property int Depth { int get(); void set(int value); };
[System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public int Depth { get; set; }
[System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public int Depth { get; set; }
[<System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Depth : int with get, set
[<System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Depth : int with get, set
Public Property Depth As Integer
Nilai Properti
Kedalaman menu tempat MenuItemBinding diterapkan. Defaultnya adalah -1, yang menunjukkan bahwa properti ini tidak diatur.
- Atribut
Contoh
Contoh kode berikut menunjukkan cara menggunakan Depth properti untuk menentukan kedalaman menu untuk menerapkan MenuItemBinding objek. Agar contoh ini berfungsi dengan benar, Anda harus menyalin data XML sampel di bawah ini ke file bernama MenuDepth.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>MenuItemBinding Depth Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemBinding Depth Example</h3>
<asp:menu id="NavigationMenu"
datasourceid="MenuSource"
runat="server">
<databindings>
<asp:menuitembinding depth="0"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_self" />
<asp:menuitembinding depth="1"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_blank"/>
<asp:menuitembinding depth="2"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_blank"/>
</databindings>
</asp:menu>
<asp:xmldatasource id="MenuSource"
datafile="MenuDepth.xml"
runat="server"/>
</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>MenuItemBinding Depth Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemBinding Depth Example</h3>
<asp:menu id="NavigationMenu"
datasourceid="MenuSource"
runat="server">
<databindings>
<asp:menuitembinding depth="0"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_self" />
<asp:menuitembinding depth="1"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_blank"/>
<asp:menuitembinding depth="2"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_blank"/>
</databindings>
</asp:menu>
<asp:xmldatasource id="MenuSource"
datafile="MenuDepth.xml"
runat="server"/>
</form>
</body>
</html>
Kode berikut adalah contoh data peta situs untuk contoh sebelumnya.
<MapNode ImageUrl="~\Images\Home.gif"
Title="Home"
Description="Root Page"
ToolTip="Home Page">
<MapNode ImageUrl="~\Images\Music.gif"
Title="Music"
Description="Music Category"
ToolTip="Music Page">
<MapNode ImageUrl="~\Images\Classical.gif"
Title="Classical"
Description="Classical Section"
ToolTip="Classical Page"/>
<MapNode ImageUrl="~\Images\Rock.gif"
Title="Rock"
Description="Rock Section"
ToolTip="Rock Page"/>
<MapNode ImageUrl="~\Images\Jazz.gif"
Title="Jazz"
Description="Jazz Section"
ToolTip="Jazz Page"/>
</MapNode>
<MapNode ImageUrl="~\Images\Movies.gif"
Title="Movies"
Description="Movies Category"
ToolTip="Movies Page">
<MapNode ImageUrl="~\Images\Action.gif"
Title="Action"
Description="Action Section"
ToolTip="Action Page"/>
<MapNode ImageUrl="~\Images\Drama.gif"
Title="Drama"
Description="Drama Section"
ToolTip="Drama Page"/>
<MapNode ImageUrl="~\Images\Musical.gif"
Title="Musical"
Description="Musical Section"
ToolTip="Musical Page"/>
</MapNode>
</MapNode>
Keterangan
Saat membuat MenuItemBinding objek, Anda harus menentukan kriteria untuk pengikatan. Kriteria menunjukkan kapan item data harus terikat ke item menu. Anda dapat menentukan Depth properti, DataMember properti, atau keduanya.
Depth Gunakan properti untuk menentukan kedalaman menu untuk menerapkan MenuItemBinding objek. Misalnya, deklarasi berikut mengikat MenuItemBinding bidang Nama dan ID sumber data ke Text properti dan Value , masing-masing, dari semua item menu dengan kedalaman 0:
<asp:MenuItemBinding Depth="0" TextField="Name" ValueField="ID">
Terkadang Anda mungkin perlu membuat pengikatan item menu yang menentukan kedalaman dan anggota data. Ini sering digunakan ketika sumber data berisi item pada tingkat yang berbeda yang memiliki nilai anggota data yang sama. Misalnya, Anda dapat memiliki <Item> elemen yang muncul di tingkat yang berbeda dalam file XML. Deklarasi berikut MenuItemBinding menunjukkan cara menentukan pengikatan item menu yang berlaku untuk anggota data yang identik pada kedalaman menu yang berbeda:
<asp:MenuItemBinding DataMember="Item" Depth="1" TextField="Title">
<asp:MenuItemBinding DataMember="Item" Depth="2" TextField="ISBN">
Jika pengikatan item menu ditentukan tanpa kedalaman dan anggota data, pengikatan item menu diterapkan ke semua item menu dalam menu. Ini biasanya digunakan ketika semua item data memiliki properti yang sama dan harus ditampilkan secara identik, terlepas dari kedalaman menu.
Setelah kriteria pengikatan ditetapkan, Anda kemudian dapat mengikat properti MenuItem objek yang dapat terikat ke nilai. Anda dapat mengikat ke bidang item data atau ke nilai statis. Saat terikat ke nilai statis, semua MenuItem objek tempat MenuItemBinding objek diterapkan berbagi nilai yang sama. Properti yang terikat ke bidang berisi nilai bidang dari sumber data.
Jika objek yang berkonflik MenuItemBinding ditentukan, Menu kontrol akan menerapkan pengikatan item menu dalam urutan prioritas berikut:
Objek MenuItemBinding yang menentukan dan mencocokkan kedalaman dan anggota data.
Objek MenuItemBinding yang menentukan dan mencocokkan anggota data saja.
Objek MenuItemBinding yang menentukan dan mencocokkan kedalaman saja.
Objek MenuItemBinding yang mendefinisikan kedalaman atau anggota data. (Jenis pengikatan item menu ini diterapkan ke semua item menu di menu.)
Objek MenuItemBinding yang tidak memiliki kecocokan di sumber data. Dalam hal ini, nilai yang dikembalikan oleh
ToString()metode item data kemudian terikat ke Text properti dan Value item menu tempat MenuItemBinding objek diterapkan.