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 označující, zda předdefinované 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
true
k zobrazení integrovaných ovládacích prvků pro vložení nového záznamu; false
v opačném případě . Výchozí formát je false
.
Příklady
Následující příklad kódu ukazuje, jak použít AutoGenerateInsertButton vlastnost k zobrazení předdefinovaných ovládacích prvků k 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áněl data, musí být jeho SqlDataSource.InsertCommand vlastnost nastavena příkazem insert dotazu.
Když je vlastnost nastavena AutoGenerateInsertButton na true
, CommandField pole řádku s tlačítkem Nový se automaticky zobrazí v ovládacím DetailsView prvku. Kliknutím na tlačítko Nový ovládací prvek umístíte DetailsView 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í, příslušný 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ý nahradí také tlačítkem Vložit a tlačítkem Storno. 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 zrušíte operaci vložení 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í prostřednictvím kódu programu, 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. Následující tabulka uvádí dostupné události.
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 DetailsView ovládacím prvku vloží záznam. Tato událost se často používá k zrušení operace vložení. |
ModeChanged | Dojde po DetailsView změně režimů 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í.