DetailsView.Fields Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u een verzameling DataControlField objecten op die de expliciet gedeclareerde rijvelden in een DetailsView besturingselement vertegenwoordigen.
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
Waarde van eigenschap
Een DataControlFieldCollection met alle expliciet gedeclareerde rijvelden in het DetailsView besturingselement.
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u rijvelden declaratief kunt toevoegen aan de Fields verzameling van een DetailsView besturingselement.
<%@ 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>
Opmerkingen
Wanneer u de rijvelden voor een DetailsView besturingselement expliciet declareert, worden deze rijvelden opgeslagen in de Fields eigenschap (verzameling). Met Fields de verzameling kunt u ook programmatisch de verzameling van expliciet gedeclareerde rijen beheren.
Note
Expliciet gedeclareerde rijvelden kunnen worden gebruikt in combinatie met automatisch gegenereerde rijvelden. Wanneer beide worden gebruikt, worden expliciet gedeclareerde rijvelden eerst weergegeven, gevolgd door de automatisch gegenereerde rijvelden. Automatisch gegenereerde rijvelden worden niet toegevoegd aan de Fields verzameling.
Verschillende rijveldtypen bepalen het gedrag van de rijen in het besturingselement. In de volgende tabel ziet u de verschillende rijveldtypen die in de Fields verzameling kunnen worden gebruikt.
| Rijveldtype | Beschrijving |
|---|---|
| BoundField | Geeft de waarde van een veld in een gegevensbron weer als tekst. |
| ButtonField | Geeft een opdrachtknop weer in het DetailsView besturingselement. Hiermee kunt u een rij weergeven met een aanpasbare knop, zoals de knop Toevoegen of Verwijderen. |
| CheckBoxField | Hiermee wordt een selectievakje in het DetailsView besturingselement weergegeven. Dit rijveldtype wordt vaak gebruikt voor het weergeven van velden met een Booleaanse waarde. |
| CommandField | Geeft ingebouwde opdrachtknoppen weer om bewerkingen uit te voeren, in te voegen of te verwijderen in het DetailsView besturingselement. |
| HyperLinkField | Geeft de waarde van een veld in een gegevensbron weer als hyperlink. Met dit rijveldtype kunt u een tweede veld binden aan de URL van de hyperlink. |
| ImageField | Geeft een afbeelding weer in het DetailsView besturingselement. |
| TemplateField | Geeft door de gebruiker gedefinieerde inhoud weer voor een rij in het DetailsView besturingselement volgens een opgegeven sjabloon. Met dit rijveldtype kunt u een aangepast rijveld maken. |
Als u de rijvelden voor een DetailsView besturingselement expliciet wilt declareren, stelt u eerst de AutoGenerateRows eigenschap in op false. Voeg vervolgens openings- en slottags <Fields> toe tussen de openings- en sluitingstags van het DetailsView besturingselement. Geef ten slotte de rijvelden weer die u wilt opnemen tussen de openings- en afsluittags <Fields> . De rijvelden worden weergegeven in het DetailsView besturingselement in de volgorde waarin de rijvelden worden weergegeven in de Fields verzameling.
Hoewel u via programmacode rijvelden aan de Fields verzameling kunt toevoegen, is het eenvoudiger om de rijvelden declaratief weer te geven in het DetailsView besturingselement en vervolgens de Visible eigenschap van elk rijveld te gebruiken om het rijveld weer te geven of te verbergen.
Als de Visible eigenschap van een rijveld is ingesteld op false, wordt de rij niet weergegeven in het DetailsView besturingselement en maken de gegevens voor de rij geen retour naar de client. Als u wilt dat de gegevens voor een rij die niet zichtbaar zijn om een retour te maken, voegt u de veldnaam toe aan de DataKeyNames eigenschap.