ListItem 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.
Mewakili item data dalam kontrol daftar terikat data. Kelas ini tidak dapat diwariskan.
public ref class ListItem sealed : System::Web::UI::IAttributeAccessor, System::Web::UI::IParserAccessor, System::Web::UI::IStateManager
[System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))]
public sealed class ListItem : System.Web.UI.IAttributeAccessor, System.Web.UI.IParserAccessor, System.Web.UI.IStateManager
[<System.ComponentModel.TypeConverter(typeof(System.ComponentModel.ExpandableObjectConverter))>]
type ListItem = class
interface IStateManager
interface IParserAccessor
interface IAttributeAccessor
Public NotInheritable Class ListItem
Implements IAttributeAccessor, IParserAccessor, IStateManager
- Warisan
-
ListItem
- Atribut
- Penerapan
Contoh
Contoh berikut mengilustrasikan penggunaan ListItem kontrol dalam ListBox kontrol.
Catatan
Sampel kode berikut menggunakan model kode file tunggal dan mungkin tidak berfungsi dengan benar jika disalin langsung ke file code-behind. Setiap sampel kode harus disalin ke dalam file teks kosong yang memiliki ekstensi .aspx. Untuk informasi selengkapnya tentang model kode Formulir Web, lihat Model Kode Halaman Formulir Web ASP.NET.
<%@ Page Language="C#" AutoEventWireup="True" %>
<!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>
<title>ListBox Example</title>
<script language="C#" runat="server">
void SubmitBtn_Click(Object Sender, EventArgs e) {
if (ListBox1.SelectedIndex > -1) {
Label1.Text="You chose: " + ListBox1.SelectedItem.Text;
Label1.Text+="<br /> with value: " + ListBox1.SelectedItem.Value;
}
}
</script>
</head>
<body>
<h3>ListBox Example</h3>
<br />
<form id="form1" runat="server">
<asp:ListBox id="ListBox1" Width="100px" runat="server">
<asp:ListItem>Item 1</asp:ListItem>
<asp:ListItem>Item 2</asp:ListItem>
<asp:ListItem>Item 3</asp:ListItem>
<asp:ListItem Value="Value 4">Item 4</asp:ListItem>
<asp:ListItem Text="Item 5" Value="Value 5" Selected="True"/>
<asp:ListItem>Item 6</asp:ListItem>
</asp:ListBox>
<asp:button Text="Submit" OnClick="SubmitBtn_Click" runat="server" />
<br />
<asp:Label id="Label1" font-names="Verdana" font-size="10pt" runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!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>
<title>ListBox Example</title>
<script language="VB" runat="server">
Sub SubmitBtn_Click(Sender As Object, e As EventArgs)
If ListBox1.SelectedIndex > -1 Then
Label1.Text = "You chose: " & ListBox1.SelectedItem.Text
Label1.Text &= "<br /> with value: " & ListBox1.SelectedItem.Value
End If
End Sub
</script>
</head>
<body>
<h3>ListBox Example</h3>
<br />
<form id="form1" runat="server">
<asp:ListBox id="ListBox1" Width="100px" runat="server">
<asp:ListItem>Item 1</asp:ListItem>
<asp:ListItem>Item 2</asp:ListItem>
<asp:ListItem>Item 3</asp:ListItem>
<asp:ListItem Value="Value 4">Item 4</asp:ListItem>
<asp:ListItem Text="Item 5" Value="Value 5" Selected="True"/>
<asp:ListItem>Item 6</asp:ListItem>
</asp:ListBox>
<asp:button Text="Submit" OnClick="SubmitBtn_Click" runat="server" />
<br />
<asp:Label id="Label1" font-names="Verdana" font-size="10pt" runat="server"/>
</form>
</body>
</html>
<!-- This example demonstrates how to select multiple items from a DataList and add the
selected items to a DataGrid. The example uses a foreach loop to iterate through
the ListItem objects in the ListItemCollection of ListBox1. -->
<!-- This example demonstrates how to select multiple items from a DataList
and add the selected items to a DataGrid. The example uses a For Each loop
to iterate through the ListItem objects in the ListItemCollection of ListBox1. -->
<%@ Page language="c#" AutoEventWireup="true"%>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script language="C#" runat="server">
// Global Variables.
private DataView dv;
private DataTable dt = new DataTable();
private void Page_Load(object sender, System.EventArgs e)
{
// <Snippet4>
// Set the number of rows displayed in the ListBox to be
// the number of items in the ListBoxCollection.
ListBox1.Rows = ListBox1.Items.Count;
// </Snippet4>
// If the DataTable is already stored in the Web form's default
// HttpSessionState variable, then don't recreate the DataTable.
if (Session["data"] == null)
{
// Add columns to the DataTable.
dt.Columns.Add(new DataColumn("Item"));
dt.Columns.Add(new DataColumn("Price"));
// Store the DataTable in the Session variable so it can
// be accessed again later.
Session["data"] = dt;
// Use the table to create a DataView, because the DataGrid
// can only bind to a data source that implements IEnumerable.
dv = new DataView(dt);
// Set the DataView as the data source, and bind it to the DataGrid.
DataGrid1.DataSource = dv;
DataGrid1.DataBind();
}
}
private void addButton_Click(object sender, System.EventArgs e)
{
// <Snippet5>
// Add the items selected in ListBox1 to DataGrid1.
foreach (ListItem item in ListBox1.Items)
{
if (item.Selected)
{
// Add the item to the DataGrid.
// First, get the DataTable from the Session variable.
dt = (DataTable)Session["data"];
if (dt != null)
{
// Create a new DataRow in the DataTable.
DataRow dr = dt.NewRow();
// Add the item to the new DataRow.
dr["Item"] = item.Text;
// Add the item's value to the DataRow.
dr["Price"] = item.Value;
// Add the DataRow to the DataTable.
dt.Rows.Add(dr);
// </Snippet5>
// Rebind the data to DataGrid1.
dv = new DataView(dt);
DataGrid1.DataSource = dv;
DataGrid1.DataBind();
}
}
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title> ListItemCollection Example </title>
</head>
<body>
<form id="form1" runat="server">
<h3> ListItemCollection Example </h3>
<table cellpadding="6" border="0">
<tr>
<td valign="top">
<asp:ListBox id="ListBox1" runat="server" SelectionMode="Multiple">
<asp:ListItem Value=".89">apples</asp:ListItem>
<asp:ListItem Value=".49">bananas</asp:ListItem>
<asp:ListItem Value="2.99">cherries</asp:ListItem>
<asp:ListItem Value="1.49">grapes</asp:ListItem>
<asp:ListItem Value="2.00">mangos</asp:ListItem>
<asp:ListItem Value="1.09">oranges</asp:ListItem>
</asp:ListBox>
</td>
<td valign="top">
<asp:Button id="addButton" runat="server" Text="Add -->"
Width="100px" OnClick="addButton_Click"></asp:Button>
</td>
<td valign="top">
<asp:DataGrid Runat="server" ID="DataGrid1" CellPadding="4">
</asp:DataGrid>
</td>
</tr>
</table>
</form>
</body>
</html>
<%@ Page language="VB" AutoEventWireup="true"%>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
' Global Variables.
Private dv As DataView
Private dt As New DataTable()
Private Sub Page_Load(sender As Object, e As System.EventArgs)
' <Snippet4>
' Set the number of rows displayed in the ListBox to be
' the number of items in the ListBoxCollection.
ListBox1.Rows = ListBox1.Items.Count
' </Snippet4>
' If the DataTable is already stored in the Web form's default
' HttpSessionState variable, then don't recreate the DataTable.
If Session("data") Is Nothing Then
' Add columns to the DataTable.
dt.Columns.Add(New DataColumn("Item"))
dt.Columns.Add(New DataColumn("Price"))
' Store the DataTable in the Session variable so it can be
' accessed again later.
Session("data") = dt
' Use the table to create a DataView, because the DataGrid
' can only bind to a data source that implements IEnumerable.
dv = New DataView(dt)
' Set the DataView as the data source, and bind it to the DataGrid.
DataGrid1.DataSource = dv
DataGrid1.DataBind()
End If
End Sub
Private Sub addButton_Click(sender As Object, e As System.EventArgs)
' <Snippet5>
' Add the items selected in ListBox1 to DataGrid1.
Dim item As ListItem
For Each item In ListBox1.Items
If item.Selected Then
' Add the item to the DataGrid.
' First, get the DataTable from the Session variable.
dt = CType(Session("data"), DataTable)
If Not (dt Is Nothing) Then
' Create a new DataRow in the DataTable.
Dim dr As DataRow
dr = dt.NewRow()
' Add the item to the new DataRow.
dr("Item") = item.Text
' Add the item's value to the DataRow.
dr("Price") = item.Value
' Add the DataRow to the DataTable.
dt.Rows.Add(dr)
' </Snippet5>
' Rebind the data to DataGrid1.
dv = new DataView(dt)
DataGrid1.DataSource = dv
DataGrid1.DataBind()
End If
End If
Next item
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title> ListItemCollection Example </title>
</head>
<body>
<form id="form1" runat="server">
<h3> ListItemCollection Example </h3>
<table cellpadding="6" border="0">
<tr>
<td valign="top">
<asp:ListBox id="ListBox1" runat="server" SelectionMode="Multiple">
<asp:ListItem Value=".89">apples</asp:ListItem>
<asp:ListItem Value=".49">bananas</asp:ListItem>
<asp:ListItem Value="2.99">cherries</asp:ListItem>
<asp:ListItem Value="1.49">grapes</asp:ListItem>
<asp:ListItem Value="2.00">mangos</asp:ListItem>
<asp:ListItem Value="1.09">oranges</asp:ListItem>
</asp:ListBox>
</td>
<td valign="top">
<asp:Button id="addButton" runat="server" Text="Add -->"
Width="100px" OnClick="addButton_Click"></asp:Button>
</td>
<td valign="top">
<asp:DataGrid Runat="server" ID="DataGrid1" CellPadding="4">
</asp:DataGrid>
</td>
</tr>
</table>
</form>
</body>
</html>
Keterangan
ListItem Kontrol mewakili item data individual dalam kontrol daftar terikat data, seperti ListBox atau RadioButtonList kontrol.
Ada beberapa cara untuk menentukan teks yang ditampilkan untuk item dalam kontrol daftar. Metode yang paling umum adalah dengan menempatkan teks dalam konten HTML dalam. Konten HTML dalam adalah teks antara tag ListItem pembuka dan penutup kontrol. Anda juga dapat menggunakan Text properti untuk menentukan teks yang ditampilkan dalam kontrol daftar untuk item tersebut.
Properti Value memungkinkan Anda mengaitkan nilai dengan item dalam kontrol daftar, selain teks yang ditampilkan dalam kontrol. Misalnya, Anda dapat menampilkan teks untuk item dalam kontrol daftar, seperti "Item 1"
, dan menggunakan properti untuk menentukan nilai untuk item tersebut Value , seperti "$1.99"
.
Anda dapat memiliki kombinasi konten HTML dalam, Text, atau Value kumpulan properti. Output HTML yang dihasilkan untuk ListItem kontrol tergantung pada kombinasi ketiga properti ini yang diatur. Misalnya, jika ketiga properti ditetapkan sebagai berikut:
<asp:ListItem Value="Value 1" Text="Item 1">Inner 1</asp:ListItem>
Konten HTML dalam digunakan untuk konten HTML dalam yang dirender dan Value properti digunakan untuk Value
atribut . Output penyajian HTML yang dihasilkan adalah:
<option value="Value 1">Inner 1</option>
Tabel berikut mencantumkan kombinasi properti set dan properti terkait yang digunakan untuk konten dan Value
atribut HTML dalam yang dirender. Tiga kolom di sebelah kiri mencantumkan kombinasi properti set. Dua kolom di daftar kanan nilai properti mana yang digunakan untuk atribut yang sesuai.
Konten HTML dalam | Properti teks | Properti nilai | Konten HTML Dalam yang Dirender | Atribut Nilai yang Dirender |
---|---|---|---|---|
Set | Set | Set | Konten HTML dalam | Properti nilai |
Set | Set | Belum diatur | Konten HTML dalam | Konten HTML dalam |
Set | Belum diatur | Set | Konten HTML dalam | Properti nilai |
Set | Belum diatur | Belum diatur | Konten HTML dalam | Teks HTML dalam |
Belum diatur | Set | Set | Properti teks | Properti nilai |
Belum diatur | Set | Belum diatur | Properti teks | Properti teks |
Belum diatur | Belum diatur | Set | Properti nilai | Properti nilai |
Belum diatur | Belum diatur | Belum diatur | Belum diatur | Belum diatur |
Catatan
Text Karena properti dan Value masing-masing memiliki nilai default string kosong, dimungkinkan untuk memiliki item daftar kosong dalam kontrol daftar.
Saat kontrol daftar ditampilkan, kontrol apa pun ListItem dengan propertinya Selected diatur ke true
muncul disorot dalam kontrol.
ListItem Kontrol menyediakan Enabled properti untuk memungkinkan Anda menentukan apakah ListItem kontrol diaktifkan atau dinonaktifkan. ListItem Kontrol yang dinonaktifkan diredupkan untuk menunjukkan bahwa kontrol tidak dapat dipilih. Gunakan properti ini untuk menonaktifkan ListItem kontrol dalam RadioButtonList kontrol atau CheckBoxList kontrol.
Catatan
Anda tidak dapat menggunakan properti ini untuk menonaktifkan ListItem kontrol dalam DropDownList kontrol atau ListBox kontrol.
Untuk daftar nilai properti awal untuk instans ListItem, lihat ListItem konstruktor.
Perhatian
Kontrol ini dapat digunakan untuk menampilkan input pengguna, yang mungkin menyertakan skrip klien berbahaya. Periksa informasi apa pun yang dikirim dari klien untuk skrip yang dapat dieksekusi, pernyataan SQL, atau kode lain sebelum menampilkannya di aplikasi Anda. Anda dapat menggunakan kontrol validasi untuk memverifikasi input pengguna sebelum menampilkan teks input dalam kontrol. ASP.NET menyediakan fitur validasi permintaan input untuk memblokir skrip dan HTML dalam input pengguna. Untuk informasi selengkapnya, lihat Mengamankan Kontrol Standar, Cara: Melindungi Dari Eksploitasi Skrip di Aplikasi Web dengan Menerapkan Pengodean HTML ke String, dan Memvalidasi Input Pengguna di Halaman Web ASP.NET.
Konstruktor
ListItem() |
Menginisialisasi instans baru kelas ListItem. |
ListItem(String) |
Menginisialisasi instans ListItem baru kelas dengan data teks yang ditentukan. |
ListItem(String, String) |
Menginisialisasi instans ListItem baru kelas dengan teks dan data nilai yang ditentukan. |
ListItem(String, String, Boolean) |
Menginisialisasi instans ListItem baru kelas dengan teks, nilai, dan data yang diaktifkan yang ditentukan. |
Properti
Attributes |
Mendapatkan kumpulan nama atribut dan pasangan nilai untuk ListItem yang tidak didukung langsung oleh kelas . |
Enabled |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah item daftar diaktifkan. |
Selected |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah item dipilih. |
Text |
Mendapatkan atau mengatur teks yang ditampilkan dalam kontrol daftar untuk item yang diwakili oleh ListItem. |
Value |
Mendapatkan atau menetapkan nilai yang terkait dengan ListItem. |
Metode
Equals(Object) |
Menentukan apakah objek yang ditentukan memiliki nilai dan teks yang sama dengan item daftar saat ini. |
FromString(String) |
ListItem Membuat dari teks yang ditentukan. |
GetHashCode() |
Berfungsi sebagai fungsi hash untuk jenis tertentu, dan cocok untuk digunakan dalam algoritma hashing dan struktur data seperti tabel hash. |
GetType() |
Mendapatkan instans Type saat ini. (Diperoleh dari Object) |
MemberwiseClone() |
Membuat salinan dangkal dari yang saat ini Object. (Diperoleh dari Object) |
ToString() |
Mengembalikan string yang mewakili objek saat ini. |
Implementasi Antarmuka Eksplisit
IAttributeAccessor.GetAttribute(String) |
Mengembalikan nilai atribut kontrol item daftar yang memiliki nama atribut yang ditentukan. |
IAttributeAccessor.SetAttribute(String, String) |
Mengatur atribut kontrol item daftar dengan nama dan nilai yang ditentukan. |
IParserAccessor.AddParsedSubObject(Object) |
Text Memungkinkan properti untuk dipertahankan sebagai konten dalam. |
IStateManager.IsTrackingViewState |
Untuk deskripsi anggota ini, lihat IsTrackingViewState. |
IStateManager.LoadViewState(Object) |
Untuk deskripsi anggota ini, lihat LoadViewState(Object). |
IStateManager.SaveViewState() |
Untuk deskripsi anggota ini, lihat SaveViewState(). |
IStateManager.TrackViewState() |
Untuk deskripsi anggota ini, lihat TrackViewState(). |
Berlaku untuk
Lihat juga
- ListControl
- RadioButtonList
- ListBox
- DropDownList
- CheckBoxList
- Gambaran Umum Kontrol Server Web ListBox
- Gambaran Umum Kontrol RadioButton dan RadioButtonList Web Server
- Gambaran Umum Kontrol Server Web BulletedList
- Gambaran Umum Kontrol Server Web DropDownList
- Mengamankan Kontrol Standar
- Cara: Melindungi Dari Eksploitasi Skrip di Aplikasi Web dengan Menerapkan Pengodean HTML ke String
- Pengantar Memvalidasi Input Pengguna di Halaman Web ASP.NET