DetailsView.AutoGenerateInsertButton DetailsView.AutoGenerateInsertButton DetailsView.AutoGenerateInsertButton DetailsView.AutoGenerateInsertButton Property

Definizione

Ottiene o imposta un valore che indica se in un controllo DetailsView vengono visualizzati i controlli incorporati di inserimento di un nuovo record.Gets or sets a value indicating whether the built-in controls to insert a new record are displayed in a DetailsView control.

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.true to display the built-in controls to insert a new record; otherwise, false. Il valore predefinito è false.The default is false.

Esempi

Nell'esempio di codice riportato di seguito viene illustrato AutoGenerateInsertButton come utilizzare la proprietà per visualizzare i controlli incorporati per inserire un nuovo record DetailsView in un controllo.The following code example demonstrates how to use the AutoGenerateInsertButton property to display the built-in controls to insert a new record in a DetailsView control.


<%@ 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.When a data source control that supports inserting is bound to a DetailsView control, the DetailsView control can take advantage of the data source control's capabilities and provide automatic inserting functionality.

Nota

Per inserire i dati in un controllo origine dati, SqlDataSource.InsertCommand è necessario impostare la relativa proprietà con un'istruzione di query INSERT.For a data source control to insert data, its SqlDataSource.InsertCommand property must be set with an insert query statement.

Quando la AutoGenerateInsertButton proprietà è impostata su true, nel CommandField DetailsView controllo viene visualizzato automaticamente un campo riga con un nuovo pulsante.When the AutoGenerateInsertButton property is set to true, a CommandField row field with a New button is automatically displayed in the DetailsView control. Facendo clic sul pulsante nuovo il DetailsView controllo viene inserito in modalità di inserimento.Clicking the New button puts that DetailsView control in insert mode. In modalità di inserimento, in ogni campo associato del controllo che non è in sola lettura viene visualizzato il controllo di input appropriato, ad TextBox esempio un controllo, per il tipo di dati del campo.When in insert mode, each bound field in the control that is not read-only displays the appropriate input control, such as a TextBox control, for the field's data type. Ciò consente all'utente di immettere il valore del campo per il nuovo record.This allows the user to enter the field's value for the new record.

Quando si fa clic su un pulsante, il pulsante nuovo viene sostituito anche con un pulsante Inserisci e un pulsante Annulla.When clicked, the New button is also replaced with an Insert button and a Cancel button. Facendo clic sul pulsante Inserisci viene inserito il nuovo record nell'origine dati e il controllo viene restituito alla modalità specificata dalla DefaultMode proprietà.Clicking the Insert button inserts the new record in the data source and returns the control to the mode specified by the DefaultMode property. Se si fa clic sul pulsante Annulla, l'operazione di inserimento viene abbandonata e il controllo viene restituito alla modalità predefinita.Clicking the Cancel button abandons the insert operation and returns the control to the default mode.

Nota

Per inserire una riga in modalità di inserimento a livello di codice ChangeMode , utilizzare il metodo.To put a row in insert mode programmatically, use the ChangeMode method.

È possibile controllare l'aspetto di un record in modalità di inserimento usando la InsertRowStyle proprietà.You can control the appearance of a record that is in insert mode by using the InsertRowStyle property. Le impostazioni comuni includono generalmente un colore di sfondo personalizzato, un colore di primo piano e le proprietà del tipo di carattere.Common settings usually include a custom background color, foreground color, and font properties.

Il DetailsView controllo fornisce diversi eventi che è possibile usare per eseguire un'azione personalizzata quando viene inserito un nuovo record.The DetailsView control provides several events that you can use to perform a custom action when a new record is inserted. Nella tabella seguente sono elencati gli eventi disponibili.The following table lists the available events.

eventEvent DescriptionDescription
ItemInserted Si verifica quando si fa clic sul pulsante Inserisci, ma dopo DetailsView che il controllo inserisce il record.Occurs when the Insert button is clicked, but after the DetailsView control inserts the record. Questo evento viene spesso usato per verificare i risultati dell'operazione di inserimento.This event is often used to check the results of the insert operation.
ItemInserting Si verifica quando si fa clic sul pulsante Inserisci, ma prima DetailsView che il controllo inserisca il record.Occurs when the Insert button is clicked, but before the DetailsView control inserts the record. Questo evento viene spesso utilizzato per annullare l'operazione di inserimento.This event is often used to cancel the insert operation.
ModeChanged Si verifica dopo DetailsView la modifica delle modalità del controllo.Occurs after the DetailsView control changes modes.
ModeChanging Si verifica prima DetailsView della modifica delle modalità del controllo.Occurs before the DetailsView control changes modes. Questo evento viene spesso utilizzato per annullare la modifica della modalità.This event is often used to cancel the mode change.

Il valore di AutoGenerateInsertButton viene archiviato nello stato di visualizzazione.The value of AutoGenerateInsertButton is stored in view state.

Si applica a

Vedi anche