Condividi tramite


DetailsView.AutoGenerateInsertButton Proprietà

Definizione

Ottiene o imposta un valore che indica se in un controllo DetailsView vengono visualizzati i controlli incorporati di inserimento di un nuovo record.

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

Valore della proprietà

true per visualizzare i controlli incorporati di inserimento di un nuovo record; in caso contrario, false. Il valore predefinito è false.

Esempio

Nell'esempio di codice seguente viene illustrato come usare la AutoGenerateInsertButton proprietà per visualizzare i controlli predefiniti per inserire un nuovo record in un DetailsView controllo.


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

Commenti

Quando un controllo origine dati che supporta l'inserimento è associato a un DetailsView controllo, il DetailsView controllo può sfruttare le funzionalità del controllo origine dati e fornire funzionalità di inserimento automatico.

Nota

Per un controllo origine dati per inserire i dati, la relativa SqlDataSource.InsertCommand proprietà deve essere impostata con un'istruzione di query di inserimento.

Quando la AutoGenerateInsertButton proprietà è impostata su true, un CommandField campo di riga con un pulsante Nuovo viene visualizzato automaticamente nel DetailsView controllo. Facendo clic sul pulsante Nuovo viene inserito il DetailsView controllo in modalità di inserimento. Quando in modalità di inserimento, ogni campo associato nel controllo che non è di sola lettura visualizza il controllo di input appropriato, ad esempio un TextBox controllo, per il tipo di dati del campo. Ciò consente all'utente di immettere il valore del campo per il nuovo record.

Quando si fa clic su, il pulsante Nuovo viene sostituito anche con un pulsante Inserisci e un pulsante Annulla. Facendo clic sul pulsante Inserisci viene inserito il nuovo record nell'origine dati e viene restituito il controllo alla modalità specificata dalla DefaultMode proprietà. Facendo clic sul pulsante Annulla viene abbandonata l'operazione di inserimento e viene restituito il controllo alla modalità predefinita.

Nota

Per inserire una riga in modalità di inserimento a livello di codice, usare il ChangeMode metodo .

È possibile controllare l'aspetto di un record in modalità di inserimento usando la InsertRowStyle proprietà . Le impostazioni comuni in genere includono un colore di sfondo personalizzato, il colore di primo piano e le proprietà del carattere.

Il DetailsView controllo fornisce diversi eventi che è possibile usare per eseguire un'azione personalizzata quando viene inserito un nuovo record. Nella tabella seguente sono elencati gli eventi disponibili.

Event Descrizione
ItemInserted Si verifica quando viene fatto clic sul pulsante Inserisci, ma dopo che il controllo inserisce il DetailsView record. Questo evento viene spesso usato per controllare i risultati dell'operazione di inserimento.
ItemInserting Si verifica quando viene fatto clic sul pulsante Inserisci, ma prima che il controllo inserisca il DetailsView record. Questo evento viene spesso usato per annullare l'operazione di inserimento.
ModeChanged Si verifica dopo le modifiche delle modalità del DetailsView controllo.
ModeChanging Si verifica prima della modifica delle modalità del DetailsView controllo. Questo evento viene spesso usato per annullare la modifica della modalità.

Il valore di viene archiviato nello stato di AutoGenerateInsertButton visualizzazione.

Si applica a

Vedi anche