DetailsView.AutoGenerateEditButton Egenskap

Definition

Hämtar eller anger ett värde som anger om de inbyggda kontrollerna för att redigera den aktuella posten visas i en DetailsView kontroll.

public:
 virtual property bool AutoGenerateEditButton { bool get(); void set(bool value); };
public virtual bool AutoGenerateEditButton { get; set; }
member this.AutoGenerateEditButton : bool with get, set
Public Overridable Property AutoGenerateEditButton As Boolean

Egenskapsvärde

trueför att visa de inbyggda kontrollerna för att redigera den aktuella posten. annars . false Standardvärdet är false.

Exempel

Följande kodexempel visar hur du använder AutoGenerateEditButton egenskapen för att visa de inbyggda kontrollerna för att redigera den aktuella posten.


<%@ 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 AutoGenerateEditButton Example</title>
</head>
<body>
    <form id="Form1" runat="server">
        
      <h3>DetailsView AutoGenerateEditButton Example</h3>
                
        <asp:detailsview id="CustomerDetailView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogenerateeditbutton="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 AutoGenerateEditButton Example</title>
</head>
<body>
    <form id="Form1" runat="server">
        
      <h3>DetailsView AutoGenerateEditButton Example</h3>
                
        <asp:detailsview id="CustomerDetailView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogenerateeditbutton="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>

Kommentarer

När en datakällakontroll som stöder uppdatering är bunden till en DetailsView kontroll kan DetailsView kontrollen dra nytta av datakällans funktioner och tillhandahålla funktioner för automatisk uppdatering.

Note

För att en datakällskontroll ska kunna uppdatera data måste dess SqlDataSource.UpdateCommand egenskap anges med en uppdateringsfråga.

När egenskapen AutoGenerateEditButton är inställd truepå visas ett CommandField radfält med knappen Redigera automatiskt i DetailsView kontrollen. Om du klickar på knappen Redigera placeras DetailsView kontrollen i redigeringsläge. När du är i redigeringsläge visar varje bundet fält i kontrollen som inte är skrivskyddad lämplig indatakontroll, till exempel en TextBox kontroll, för fältets datatyp. På så sätt kan användaren ändra fältets värde.

När du klickar på knappen Redigera ersätts även med en uppdateringsknapp och knappen Avbryt. Om du klickar på knappen Uppdatera uppdateras posten i datakällan med eventuella värdeändringar och kontrollen returneras till det läge som anges av DefaultMode egenskapen. Om du klickar på knappen Avbryt avbryts alla värdeändringar och kontrollen återgår till standardläget.

Note

Om du vill placera en DetailsView kontroll i redigeringsläge programmatiskt använder du ChangeMode metoden.

När egenskapen AutoGenerateRows också är inställd på ser kontrollen automatiskt till trueDetailsView att fältet eller fälten DataKeyNames som anges i egenskapen är skrivskyddade.

Note

Om du inte implementerar din egen uppdateringsfunktion måste du ange DataKeyNames egenskapen för att funktionen för automatisk uppdatering ska fungera.

Du kan styra utseendet på dataraderna när DetailsView kontrollen är i redigeringsläge med hjälp EditRowStyle av egenskapen . Vanliga inställningar inkluderar vanligtvis en anpassad bakgrundsfärg, förgrundsfärg och teckensnittsegenskaper.

Kontrollen DetailsView innehåller flera händelser som du kan använda för att utföra en anpassad åtgärd när en post uppdateras. I följande tabell visas tillgängliga händelser.

Händelse Description
ItemUpdated Inträffar när knappen Uppdatera klickas, men när DetailsView kontrollen har uppdaterat posten. Den här händelsen används ofta för att kontrollera resultatet av uppdateringsåtgärden.
ItemUpdating Inträffar när knappen Uppdatera klickas, men innan DetailsView kontrollen uppdaterar posten. Den här händelsen används ofta för att avbryta uppdateringsåtgärden.
ModeChanged Inträffar efter att DetailsView kontrollen har ändrat lägen.
ModeChanging Inträffar innan DetailsView kontrollen ändrar lägen. Den här händelsen används ofta för att avbryta lägesändringen.

Värdet för AutoGenerateEditButton lagras i visningstillstånd.

Gäller för

Se även