DetailsView.AutoGenerateInsertButton Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví hodnotu určující, zda integrované ovládací prvky pro vložení nového záznamu jsou zobrazeny v ovládacím DetailsView prvku.
public:
virtual property bool AutoGenerateInsertButton { bool get(); void set(bool value); };
public virtual bool AutoGenerateInsertButton { get; set; }
member this.AutoGenerateInsertButton : bool with get, set
Public Overridable Property AutoGenerateInsertButton As Boolean
Hodnota vlastnosti
truek zobrazení předdefinovaných ovládacích prvků pro vložení nového záznamu; v opačném případě . false Výchozí hodnota je false.
Příklady
Následující příklad kódu ukazuje použití AutoGenerateInsertButton vlastnosti k zobrazení předdefinovaných ovládacích prvků pro vložení nového záznamu DetailsView do 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView AutoGenerateInsertButton Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView AutoGenerateInsertButton Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogenerateinsertbutton="true"
autogeneraterows="true"
allowpaging="true"
runat="server">
<headerstyle backcolor="Navy"
forecolor="White"/>
</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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView AutoGenerateInsertButton Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView AutoGenerateInsertButton Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogenerateinsertbutton="true"
autogeneraterows="true"
allowpaging="true"
runat="server">
<headerstyle backcolor="Navy"
forecolor="White"/>
</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
Pokud je ovládací prvek zdroje dat, který podporuje vkládání, vázán na DetailsView ovládací prvek, DetailsView může ovládací prvek využívat možnosti správy zdrojů dat a poskytovat funkce automatického vkládání.
Poznámka:
Aby ovládací prvek zdroje dat vkládal data, musí být jeho SqlDataSource.InsertCommand vlastnost nastavena příkazem insert dotazu.
Pokud je vlastnost nastavena AutoGenerateInsertButton na true, CommandField v ovládacím prvku se automaticky zobrazí DetailsView pole řádku s tlačítkem Nový. Kliknutím na tlačítko Nový umístíte tento DetailsView ovládací prvek do režimu vložení. V režimu vložení zobrazí každé vázané pole v ovládacím prvku, které není jen pro čtení, odpovídající vstupní ovládací prvek, například TextBox ovládací prvek, pro datový typ pole. To uživateli umožní zadat hodnotu pole pro nový záznam.
Po kliknutí se tlačítko Nový také nahradí tlačítkem Vložit a tlačítkem Zrušit. Kliknutím na tlačítko Vložit vložíte nový záznam do zdroje dat a vrátíte ovládací prvek do režimu určeného DefaultMode vlastností. Kliknutím na tlačítko Storno operaci vložení opustíte a vrátíte ovládací prvek do výchozího režimu.
Poznámka:
Pokud chcete vložit řádek do režimu vložení programově, použijte metodu ChangeMode .
Vzhled záznamu, který je v režimu vložení, můžete řídit pomocí InsertRowStyle vlastnosti. Běžná nastavení obvykle zahrnují vlastní barvu pozadí, barvu popředí a vlastnosti písma.
Ovládací DetailsView prvek poskytuje několik událostí, které můžete použít k provedení vlastní akce při vložení nového záznamu. V následující tabulce jsou uvedeny dostupné události.
| Zvláštní událost | Description |
|---|---|
| ItemInserted | Nastane při kliknutí na tlačítko Vložit, ale po ovládacím DetailsView prvku vloží záznam. Tato událost se často používá ke kontrole výsledků operace vložení. |
| ItemInserting | Nastane při kliknutí na tlačítko Vložit, ale před ovládacím DetailsView prvku vloží záznam. Tato událost se často používá ke zrušení operace vložení. |
| ModeChanged | Nastane po DetailsView režimu změn ovládacího prvku. |
| ModeChanging | Nastane před režimy DetailsView změn ovládacího prvku. Tato událost se často používá ke zrušení změny režimu. |
Hodnota AutoGenerateInsertButton je uložena ve stavu zobrazení.