DetailsView.Fields 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 kumpulan DataControlField objek yang mewakili bidang baris yang dideklarasikan secara eksplisit dalam DetailsView kontrol.
public:
virtual property System::Web::UI::WebControls::DataControlFieldCollection ^ Fields { System::Web::UI::WebControls::DataControlFieldCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public virtual System.Web.UI.WebControls.DataControlFieldCollection Fields { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.Fields : System.Web.UI.WebControls.DataControlFieldCollection
Public Overridable ReadOnly Property Fields As DataControlFieldCollection
Nilai Properti
DataControlFieldCollection yang berisi semua bidang baris yang dideklarasikan secara eksplisit dalam DetailsView kontrol.
- Atribut
Contoh
Contoh kode berikut menunjukkan cara menambahkan bidang baris secara deklaratif ke Fields kumpulan DetailsView kontrol.
<%@ Page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView Fields Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView Fields Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
AutoGenerateRows="false"
allowpaging="true"
runat="server">
<Fields>
<asp:BoundField
DataField="CompanyName"
HeaderText="Company Name"/>
<asp:BoundField
DataField="City"
HeaderText="City"/>
</Fields>
</asp:detailsview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the web.config file. -->
<asp:SqlDataSource ID="DetailsViewSource" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</asp:SqlDataSource>
</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">
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView Fields Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView Fields Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
AutoGenerateRows="false"
allowpaging="true"
runat="server">
<Fields>
<asp:BoundField
DataField="CompanyName"
HeaderText="Company Name"/>
<asp:BoundField
DataField="City"
HeaderText="City"/>
</Fields>
</asp:detailsview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the web.config file. -->
<asp:SqlDataSource ID="DetailsViewSource" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
SelectCommand="Select [CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country] From
[Customers]">
</asp:SqlDataSource>
</form>
</body>
</html>
Keterangan
Saat Anda secara eksplisit mendeklarasikan bidang baris untuk DetailsView kontrol, bidang baris ini disimpan dalam Fields properti (koleksi). Koleksi ini Fields juga memungkinkan Anda mengelola koleksi baris yang dideklarasikan secara eksplisit secara terprogram.
Nota
Bidang baris yang dideklarasikan secara eksplisit dapat digunakan dalam kombinasi dengan bidang baris yang dihasilkan secara otomatis. Saat keduanya digunakan, bidang baris yang dinyatakan secara eksplisit dirender terlebih dahulu, diikuti oleh bidang baris yang dihasilkan secara otomatis. Bidang baris yang dihasilkan secara otomatis tidak ditambahkan ke Fields koleksi.
Jenis bidang baris yang berbeda menentukan perilaku baris dalam kontrol. Tabel berikut ini memperlihatkan tipe bidang baris berbeda yang bisa digunakan dalam Fields koleksi.
| Tipe bidang baris | Deskripsi |
|---|---|
| BoundField | Menampilkan nilai bidang dalam sumber data sebagai teks. |
| ButtonField | Menampilkan tombol perintah dalam DetailsView kontrol. Ini memungkinkan Anda menampilkan baris dengan kontrol tombol kustom, seperti tombol Tambahkan atau Hapus. |
| CheckBoxField | Menampilkan kotak centang dalam DetailsView kontrol. Tipe bidang baris ini umumnya digunakan untuk menampilkan bidang dengan nilai Boolean. |
| CommandField | Menampilkan tombol perintah bawaan untuk melakukan operasi edit, sisipkan, atau hapus di DetailsView kontrol. |
| HyperLinkField | Menampilkan nilai bidang dalam sumber data sebagai hyperlink. Tipe bidang baris ini memungkinkan Anda mengikat bidang kedua ke URL hyperlink. |
| ImageField | Menampilkan gambar dalam DetailsView kontrol. |
| TemplateField | Menampilkan konten yang ditentukan pengguna untuk baris dalam DetailsView kontrol sesuai dengan templat yang ditentukan. Tipe bidang baris ini memungkinkan Anda membuat bidang baris kustom. |
Untuk secara eksplisit mendeklarasikan bidang baris untuk kontrol, pertama-tama DetailsViewAutoGenerateRows atur properti ke false. Selanjutnya, tambahkan tag buka dan tutup <Fields> antara tag DetailsView pembuka dan penutup kontrol. Terakhir, cantumkan bidang baris yang ingin Anda sertakan antara tag pembuka dan penutup <Fields> . Bidang baris ditampilkan dalam DetailsView kontrol dalam urutan bidang baris muncul dalam Fields koleksi.
Meskipun Anda dapat menambahkan bidang baris secara terprogram ke Fields koleksi, lebih mudah untuk mencantumkan bidang baris secara deklaratif dalam DetailsView kontrol lalu menggunakan Visible properti dari setiap bidang baris untuk memperlihatkan atau menyembunyikan bidang baris.
Visible Jika properti bidang baris diatur ke false, baris tidak ditampilkan dalam DetailsView kontrol dan data untuk baris tidak melakukan perjalanan pulang pergi ke klien. Jika Anda ingin data untuk baris yang tidak terlihat untuk melakukan perjalanan pulang pergi, tambahkan nama bidang ke DataKeyNames properti .