Cette documentation est archivée et n’est pas conservée.

DetailsView.PageIndexChanging, événement

Remarque : cet événement est nouveau dans le .NET Framework version 2.0.

Se produit lorsque la valeur de la propriété PageIndex change avant une opération de pagination.

Espace de noms : System.Web.UI.WebControls
Assembly : System.Web (dans system.web.dll)

public event DetailsViewPageEventHandler PageIndexChanging
/** @event */
public void add_PageIndexChanging (DetailsViewPageEventHandler value)

/** @event */
public void remove_PageIndexChanging (DetailsViewPageEventHandler value)

JScript prend en charge l'utilisation d'événements mais pas la déclaration de nouveaux événements.

Le contrôle DetailsView déclenche l'événement PageIndexChanging suite à un clic sur le bouton du pagineur (bouton dont la propriété CommandName a la valeur "Page"), mais avant que le contrôle DetailsView ne gère l'opération de pagination. Cela vous permet de fournir un gestionnaire d'événements qui exécute une routine personnalisée, par exemple l'annulation de l'opération de pagination, lorsque cet événement se produit.

RemarqueRemarque

Cet événement n'est pas déclenché lorsque vous définissez la propriété PageIndex par programme.

Les boutons du pagineur se trouvent habituellement sur la ligne du pagineur d'un contrôle DetailsView.

Un objet DetailsViewPageEventArgs est passé à la méthode de gestion d'événements, ce qui vous permet de déterminer l'index de la page sélectionnée par l'utilisateur et d'indiquer que l'opération de pagination doit être annulée. Pour déterminer l'index de la page sélectionnée par l'utilisateur, utilisez la propriété NewPageIndex. Pour annuler l'opération de pagination, affectez true à la propriété Cancel de l'objet DetailsViewPageEventArgs.

Pour plus d'informations sur la gestion des événements, consultez Consommation d'événements.

L'exemple de code suivant montre comment utiliser l'événement PageIndexChanging pour annuler une opération de pagination.


<%@ Page Language="C#" %>

<script runat="server">


    void CustomerDetailView_ItemCommand(Object sender, 
      DetailsViewCommandEventArgs e)
    {
        // Clear the error message if the user cancels the edit 
        // operation.
        if (e.CommandName == "Cancel")
        {
            ErrorMessageLabel.Text = "";
        }
    }

    protected void CustomerDetailView_PageIndexChanging(
      object sender, DetailsViewPageEventArgs e)
    {
        // Cancel the paging operation if the user tries to 
        // navigate to another record while in edit mode.
        if (CustomerDetailView.CurrentMode == DetailsViewMode.Edit)
        {
            e.Cancel = true;
            // Display an error message.
            ErrorMessageLabel.Text = 
              "You cannot navigate to another record while in edit mode.";
        }

    }
</script>

<html>
<body>
    <form id="Form1" runat="server">
        <h3>
            DetailsView CurrentMode Example</h3>
        <asp:DetailsView ID="CustomerDetailView" 
          DataSourceID="DetailsViewSource" 
          AutoGenerateRows="true"
          AutoGenerateEditButton="true" 
          DataKeyNames="CustomerID" 
          GridLines="Both" 
          AllowPaging="true"
          OnItemCommand="CustomerDetailView_ItemCommand" 
          runat="server" 
          OnPageIndexChanging="CustomerDetailView_PageIndexChanging">
          
          <HeaderStyle BackColor="Navy" ForeColor="White" />
        </asp:DetailsView>
        
        <br />
        
        <asp:Label ID="ErrorMessageLabel" 
          ForeColor="Red" runat="server" />
        
        <!-- 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>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0
Afficher: