Sdílet prostřednictvím


DetailsView.Fields Vlastnost

Definice

Získá kolekci DataControlField objektů, které představují explicitně deklarovaná řádková pole v ovládacím DetailsView prvku.

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

Hodnota vlastnosti

DataControlFieldCollection

A DataControlFieldCollection obsahující všechna explicitně deklarovaná pole řádků v ovládacím DetailsView prvku.

Atributy

Příklady

Následující příklad kódu ukazuje, jak deklarativní přidat řádková pole do Fields kolekce DetailsView ovládacího prvku.


<%@ 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>

Poznámky

Když explicitně deklarujete pole DetailsView řádků ovládacího prvku, budou tato pole řádků uložena ve Fields vlastnosti (kolekci). Kolekce Fields také umožňuje programově spravovat kolekci explicitně deklarovaných řádků.

Poznámka

Explicitně deklarovaná pole řádků lze použít v kombinaci s automaticky generovanými poli řádků. Při použití obou polí se explicitně deklarovaná řádková pole vykreslí jako první a pak automaticky vygenerovaná pole řádků. Automaticky generovaná pole řádků se do Fields kolekce nepřidají.

Různé typy polí řádků určují chování řádků v ovládacím prvku. V následující tabulce jsou uvedeny různé typy polí řádků, které lze použít v kolekci Fields .

Typ pole řádku Description
BoundField Zobrazí hodnotu pole ve zdroji dat jako text.
ButtonField Zobrazí příkazové tlačítko v ovládacím DetailsView prvku. To vám umožní zobrazit řádek s vlastním ovládacím tlačítkem, jako je například tlačítko Přidat nebo Odebrat.
CheckBoxField Zobrazí v ovládacím DetailsView prvku zaškrtávací políčko. Tento typ pole řádku se běžně používá k zobrazení polí s logickou hodnotou.
CommandField Zobrazí integrovaná příkazová tlačítka pro provádění operací úprav, vložení nebo odstranění v ovládacím DetailsView prvku.
HyperLinkField Zobrazí hodnotu pole ve zdroji dat jako hypertextový odkaz. Tento typ pole řádku umožňuje svázat druhé pole s adresou URL hypertextového odkazu.
ImageField Zobrazí obrázek v ovládacím DetailsView prvku.
TemplateField Zobrazí uživatelem definovaný obsah pro řádek v ovládacím DetailsView prvku podle zadané šablony. Tento typ pole řádku umožňuje vytvořit vlastní pole řádku.

Chcete-li explicitně deklarovat pole DetailsView řádků ovládacího prvku, nejprve nastavte AutoGenerateRows vlastnost na false. Dále přidejte počáteční a pravou <Fields> značku mezi levou a pravou značkou DetailsView ovládacího prvku. Nakonec vypíšete pole řádků, která chcete zahrnout mezi levou a pravou <Fields> značkou. Pole řádků se zobrazí v ovládacím DetailsView prvku v pořadí, v jakém se pole řádků zobrazují v kolekci Fields .

I když můžete do kolekce programově přidat pole Fields řádků, je jednodušší v ovládacím DetailsView prvku deklarativní seznam polí řádků a potom pomocí Visible vlastnosti každého pole řádku zobrazit nebo skrýt pole řádku.

Visible Pokud je vlastnost pole řádku nastavena na false, řádek se nezobrazí v DetailsView ovládacím prvku a data pro řádek neprovádí odezvu klienta. Pokud chcete, aby data řádku, který není viditelný, zaokrouhlit, přidejte název pole do DataKeyNames vlastnosti.

Platí pro

Viz také