DetailsView.AutoGenerateEditButton Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit une valeur indiquant si les contrôles intégrés pour modifier l'enregistrement actuel s'affichent dans un contrôle DetailsView.
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
Valeur de propriété
true
pour afficher les contrôle intégrés afin de modifier l'enregistrement actuel ; sinon, false
. La valeur par défaut est false
.
Exemples
L’exemple de code suivant montre comment utiliser la AutoGenerateEditButton propriété pour afficher les contrôles intégrés pour modifier l’enregistrement actif.
<%@ 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>
Remarques
Lorsqu’un contrôle de source de données qui prend en charge la mise à jour est lié à un DetailsView contrôle, le DetailsView contrôle peut tirer parti des fonctionnalités du contrôle de source de données et fournir des fonctionnalités de mise à jour automatique.
Notes
Pour qu’un contrôle de source de données met à jour les données, sa SqlDataSource.UpdateCommand propriété doit être définie avec une instruction de requête de mise à jour.
Lorsque la AutoGenerateEditButton propriété est définie true
sur , un CommandField champ de ligne avec un bouton Modifier s’affiche automatiquement dans le DetailsView contrôle. Cliquer sur le bouton Modifier place ce DetailsView contrôle en mode Édition. En mode édition, chaque champ lié du contrôle qui n’est pas en lecture seule affiche le contrôle d’entrée approprié, tel qu’un TextBox contrôle, pour le type de données du champ. Cela permet à l’utilisateur de modifier la valeur du champ.
Lorsque vous cliquez sur ce bouton, le bouton Modifier est également remplacé par un bouton Mettre à jour et un bouton Annuler. Cliquer sur le bouton Mettre à jour met à jour l’enregistrement dans la source de données avec toutes les modifications de valeur et retourne le contrôle au mode spécifié par la DefaultMode propriété. Le fait de cliquer sur le bouton Annuler abandonne toutes les modifications de valeur et retourne le contrôle en mode par défaut.
Notes
Pour placer un DetailsView contrôle en mode édition par programmation, utilisez la ChangeMode méthode.
Lorsque la AutoGenerateRows propriété est également définie true
sur , le DetailsView contrôle garantit automatiquement que le champ ou les champs spécifiés dans la DataKeyNames propriété sont en lecture seule.
Notes
Sauf si vous implémentez vos propres fonctionnalités de mise à jour, vous devez définir la DataKeyNames propriété pour que la fonctionnalité de mise à jour automatique fonctionne.
Vous pouvez contrôler l’apparence des lignes de données lorsque le DetailsView contrôle est en mode édition à l’aide de la EditRowStyle propriété. Les paramètres courants incluent généralement une couleur d’arrière-plan personnalisée, une couleur de premier plan et des propriétés de police.
Le DetailsView contrôle fournit plusieurs événements que vous pouvez utiliser pour effectuer une action personnalisée lorsqu’un enregistrement est mis à jour. Le tableau suivant répertorie les événements disponibles.
Événement | Description |
---|---|
ItemUpdated | Se produit lorsque le bouton Mettre à jour est cliqué, mais après que le DetailsView contrôle a mis à jour l’enregistrement. Cet événement est souvent utilisé pour vérifier les résultats de l’opération de mise à jour. |
ItemUpdating | Se produit lorsque le bouton Mettre à jour est cliqué, mais avant que le DetailsView contrôle ne met à jour l’enregistrement. Cet événement est souvent utilisé pour annuler l’opération de mise à jour. |
ModeChanged | Se produit après que le contrôle change de DetailsView mode. |
ModeChanging | Se produit avant que le contrôle change de DetailsView mode. Cet événement est souvent utilisé pour annuler la modification du mode. |
La valeur est AutoGenerateEditButton stockée dans l’état d’affichage.