MenuItemBinding Kelas
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.
Menentukan hubungan antara item data dan item menu yang diikatnya dalam Menu kontrol. Kelas ini tidak dapat diwariskan.
public ref class MenuItemBinding sealed : ICloneable, System::Web::UI::IDataSourceViewSchemaAccessor, System::Web::UI::IStateManager
public sealed class MenuItemBinding : ICloneable, System.Web.UI.IDataSourceViewSchemaAccessor, System.Web.UI.IStateManager
type MenuItemBinding = class
interface IStateManager
interface ICloneable
interface IDataSourceViewSchemaAccessor
Public NotInheritable Class MenuItemBinding
Implements ICloneable, IDataSourceViewSchemaAccessor, IStateManager
- Warisan
-
MenuItemBinding
- Penerapan
Contoh
Contoh kode berikut menunjukkan cara menggunakan MenuItemBinding objek untuk menentukan hubungan antara bidang XmlDataSource kontrol dan item menu dalam Menu kontrol. Agar contoh ini berfungsi dengan benar, Anda harus menyalin data XML sampel di bawah ini ke file bernama Menu.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 Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemBinding Example</h3>
<asp:menu id="NavigationMenu"
datasourceid="MenuSource"
runat="server">
<DataBindings>
<asp:menuitembinding datamember="MapHomeNode"
formatstring="({0})"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_self" />
<asp:menuitembinding datamember="MapNode"
depth="1"
formatstring="[{0}]"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_blank"/>
<asp:menuitembinding datamember="MapNode"
depth="2"
formatstring="<{0}>"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_blank"/>
</DataBindings>
</asp:menu>
<asp:xmldatasource id="MenuSource"
datafile="Menu.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 Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemBinding Example</h3>
<asp:menu id="NavigationMenu"
datasourceid="MenuSource"
runat="server">
<DataBindings>
<asp:menuitembinding datamember="MapHomeNode"
formatstring="({0})"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_self" />
<asp:menuitembinding datamember="MapNode"
depth="1"
formatstring="[{0}]"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_blank"/>
<asp:menuitembinding datamember="MapNode"
depth="2"
formatstring="<{0}>"
textfield="Title"
valuefield="Description"
imageurlfield="ImageUrl"
tooltipfield="ToolTip"
target="_blank"/>
</DataBindings>
</asp:menu>
<asp:xmldatasource id="MenuSource"
datafile="Menu.xml"
runat="server"/>
</form>
</body>
</html>
Kode berikut adalah contoh data peta situs untuk contoh sebelumnya.
<MapHomeNode 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>
</MapHomeNode>
Keterangan
Menu Saat kontrol terikat ke sumber data di mana setiap item data berisi beberapa bidang (seperti elemen XML dengan beberapa atribut), jika tidak ada pengikatan item menu yang ditentukan, item menu menampilkan nilai yang dikembalikan oleh ToString() metode item data secara default. Dalam kasus elemen XML, item menu menampilkan nama elemen, yang menunjukkan struktur menu yang mendasar, tetapi tidak terlalu berguna jika tidak. Anda dapat mengikat properti item menu ke bidang tertentu dengan menentukan pengikatan item menu. Objek MenuItemBinding menentukan hubungan antara setiap item data dan item menu yang diikatnya.
Nota
Menu Ketika kontrol terikat ke SiteMapDataSource kontrol, pengikatan item menu tidak berpengaruh. Pengikatan dilakukan secara otomatis menggunakan penyedia peta situs.
Kontrol Menu menyimpan objeknya MenuItemBinding di DataBindings properti dan menerapkan pengikatan ke sumber data untuk membuat hubungan satu-ke-satu antara hierarki menu dan hierarki sumber data. Untuk setiap item data di sumber data, Menu kontrol mencoba mencocokkan item data dengan MenuItemBinding objek untuk membuat objek yang MenuItem sesuai.
Saat membuat MenuItemBinding objek, Anda harus menentukan kriteria untuk pengikatan. Kriteria menunjukkan kapan item data harus terikat ke item menu. Anda dapat menentukan Depth, , DataMemberatau keduanya.
Kedalaman item menu menentukan tingkat menu yang terikat. Misalnya, deklarasi berikut mengikat MenuItemBinding bidang Nama dan ID sumber data ke Text properti dan Value , masing-masing, dari semua simpul dengan kedalaman 0:
<asp:MenuItemBinding Depth="0" TextField="Name" ValueField="ID">
Anggota data menentukan jenis item data di sumber data yang mendasar, tetapi dapat mewakili informasi yang berbeda tergantung pada sumber data. Setiap item data dalam sumber data hierarkis (diwakili oleh IHierarchyData objek) mengekspos Type properti, yang menentukan jenis item data. Misalnya, anggota data untuk elemen XML menentukan nama elemen . Saat sumber data berisi beberapa jenis item data, anggota data menentukan jenis item data mana yang akan digunakan. Deklarasi berikut mengikat MenuItemBinding<Book> elemen XmlDataSource kontrol ke semua item menu di menu, terlepas dari lokasi dalam hierarki:
<asp:MenuItemBinding DataMember="Book" TextField="Title" ValueField= "ISBN">
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 terkait dari sumber data.
Nota
Anda dapat secara selektif mengambil alih properti terikat dalam MenuItem objek dengan mengatur properti yang sesuai secara langsung.
Tabel berikut mencantumkan properti MenuItemBinding kelas yang memungkinkan Anda mengikat properti MenuItem objek ke bidang item data.
| Harta benda | Deskripsi |
|---|---|
| ImageUrlField | Bidang yang akan diikat ke ImageUrl properti MenuItem objek. |
| NavigateUrlField | Bidang yang akan diikat ke NavigateUrl properti MenuItem objek. |
| TextField | Bidang yang akan diikat ke Text properti MenuItem objek. |
| ToolTipField | Bidang yang akan diikat ke ToolTip properti MenuItem objek. |
| ValueField | Bidang yang akan diikat ke Value properti MenuItem objek. |
Tabel berikut mencantumkan properti MenuItemBinding kelas yang memungkinkan Anda mengikat properti objek ke MenuItem nilai statis.
| Harta benda | Deskripsi |
|---|---|
| ImageUrl | Nilai statis untuk mengikat properti ImageUrlMenuItem objek. |
| NavigateUrl | Nilai statis untuk mengikat properti NavigateUrlMenuItem objek. |
| Target | Nilai statis untuk mengikat properti TargetMenuItem objek. |
| Text | Nilai statis untuk mengikat properti TextMenuItem objek. |
| ToolTip | Nilai statis untuk mengikat properti ToolTipMenuItem objek. |
| Value | Nilai statis untuk mengikat properti ValueMenuItem objek. |
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.
Kelas ini MenuItemBinding juga memungkinkan Anda memformat teks yang ditampilkan dalam item menu dengan mengatur FormatString properti .
Konstruktor
| Nama | Deskripsi |
|---|---|
| MenuItemBinding() |
Menginisialisasi instans baru dari kelas MenuItemBinding. |
Properti
| Nama | Deskripsi |
|---|---|
| DataMember |
Mendapatkan atau mengatur anggota data untuk diikat ke item menu. |
| Depth |
Mendapatkan atau mengatur kedalaman menu tempat MenuItemBinding objek diterapkan. |
| Enabled |
Mendapatkan atau mengatur nilai yang menunjukkan apakah item menu tempat MenuItemBinding objek diterapkan diaktifkan, memungkinkan item menampilkan gambar pop-out dan item menu turunan apa pun. |
| EnabledField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti EnabledMenuItem objek tempat MenuItemBinding objek diterapkan. |
| FormatString |
Mendapatkan atau mengatur string yang menentukan format tampilan untuk teks item menu tempat MenuItemBinding objek diterapkan. |
| ImageUrl |
Mendapatkan atau mengatur URL ke gambar yang ditampilkan di samping teks item menu tempat MenuItemBinding objek diterapkan. |
| ImageUrlField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti ImageUrlMenuItem objek tempat MenuItemBinding objek diterapkan. |
| NavigateUrl |
Mendapatkan atau mengatur URL yang akan ditautkan saat item menu tempat MenuItemBinding objek diterapkan diklik. |
| NavigateUrlField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti NavigateUrlMenuItem objek tempat MenuItemBinding objek diterapkan. |
| PopOutImageUrl |
Mendapatkan atau mengatur URL ke gambar yang menunjukkan adanya submenu dinamis untuk item menu tempat MenuItemBinding objek diterapkan. |
| PopOutImageUrlField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti PopOutImageUrlMenuItem objek tempat MenuItemBinding objek diterapkan. |
| Selectable |
Mendapatkan atau mengatur nilai yang menunjukkan apakah item menu tempat MenuItemBinding objek diterapkan dapat dipilih, atau "dapat diklik." |
| SelectableField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti SelectableMenuItem objek tempat MenuItemBinding objek diterapkan. |
| SeparatorImageUrl |
Mendapatkan atau mengatur URL ke gambar yang ditampilkan di bawah teks item menu (untuk memisahkannya dari item menu lain) untuk item menu tempat MenuItemBinding objek diterapkan. |
| SeparatorImageUrlField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti SeparatorImageUrlMenuItem objek tempat MenuItemBinding objek diterapkan. |
| Target |
Mendapatkan atau mengatur jendela target atau bingkai untuk menampilkan isi halaman Web yang terkait dengan item menu tempat MenuItemBinding objek diterapkan. |
| TargetField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti TargetMenuItem objek tempat MenuItemBinding objek diterapkan. |
| Text |
Mendapatkan atau mengatur teks yang ditampilkan untuk item menu tempat MenuItemBinding objek diterapkan. |
| TextField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti TextMenuItem objek tempat MenuItemBinding objek diterapkan. |
| ToolTip |
Mendapatkan atau mengatur teks TipsAlat untuk item menu tempat MenuItemBinding objek diterapkan. |
| ToolTipField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti ToolTipMenuItem objek tempat MenuItemBinding objek diterapkan. |
| Value |
Mendapatkan atau mengatur nilai yang tidak diputar yang digunakan untuk menyimpan data tambahan tentang item menu tempat objek diterapkan, seperti data yang MenuItemBinding digunakan untuk menangani peristiwa postback. |
| ValueField |
Mendapatkan atau mengatur nama bidang dari sumber data untuk mengikat properti ValueMenuItem objek tempat MenuItemBinding objek diterapkan. |
Metode
| Nama | Deskripsi |
|---|---|
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. |
Implementasi Antarmuka Eksplisit
| Nama | Deskripsi |
|---|---|
| ICloneable.Clone() |
Membuat salinan MenuItemBinding objek. |
| IDataSourceViewSchemaAccessor.DataSourceViewSchema |
Untuk deskripsi anggota ini, lihat DataSourceViewSchema. |
| IStateManager.IsTrackingViewState |
Mendapatkan nilai yang menunjukkan apakah MenuItemBinding objek menyimpan perubahan pada status tampilannya. |
| IStateManager.LoadViewState(Object) |
Memuat status tampilan simpul yang disimpan sebelumnya. |
| IStateManager.SaveViewState() |
Menyimpan perubahan status tampilan ke Object. |
| IStateManager.TrackViewState() |
Menginstruksikan MenuItemBinding objek untuk melacak perubahan pada status tampilannya. |
Berlaku untuk
Lihat juga
- Menu
- MenuItem
- MenuItemBindingCollection
- AccessDataSource
- ObjectDataSource
- SiteMapDataSource
- SqlDataSource
- XmlDataSource
- DataBindings
- DataMember
- Depth
- FormatString
- ImageUrl
- ImageUrl
- ImageUrlField
- NavigateUrl
- NavigateUrl
- NavigateUrlField
- Target
- Text
- Text
- TextField
- ToolTip
- ToolTip
- ToolTipField
- Value
- ValueField