Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

DetailsView.PageIndexChanging-Ereignis

Aktualisiert: November 2007

Tritt ein, wenn sich vor einem Pagingvorgang der Wert der PageIndex-Eigenschaft ändert.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

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

JScript unterstützt keine Ereignisse.
<asp:DetailsView OnPageIndexChanging="DetailsViewPageEventHandler" />

Das DetailsView-Steuerelement löst das PageIndexChanging-Ereignis aus, wenn auf eine Pagerschaltfläche (eine Schaltfläche, deren CommandName-Eigenschaft auf "Page" festgelegt ist) innerhalb des Steuerelements geklickt wird, jedoch bevor das DetailsView-Steuerelement den Pagingvorgang behandelt. Dadurch können Sie einen Ereignishandler bereitstellen, der bei jedem Auftreten dieses Ereignisses eine benutzerdefinierte Routine ausführt, beispielsweise den Abbruch des Pagingvorgangs.

t2whc6f8.alert_note(de-de,VS.90).gifHinweis:

Dieses Ereignis wird nicht ausgelöst, wenn Sie die PageIndex-Eigenschaft programmgesteuert festlegen.

Pagerschaltflächen befinden sich normalerweise in der Pagerzeile eines DetailsView-Steuerelements.

Ein DetailsViewPageEventArgs-Objekt wird an den Ereignishandler weitergegeben. Dadurch können Sie den Index der vom Benutzer ausgewählten Seite ermitteln und angeben, dass der Pagingvorgang abgebrochen werden soll. Ermitteln Sie den Index der vom Benutzer ausgewählten Seite mit der NewPageIndex-Eigenschaft. Legen Sie die Cancel-Eigenschaft des DetailsViewPageEventArgs-Objekts auf true fest, um den Pagingvorgang abzubrechen.

Weitere Informationen über die Behandlung von Ereignissen finden Sie unter Behandeln von Ereignissen.

Im folgenden Codebeispiel wird veranschaulicht, wie mit dem PageIndexChanging-Ereignis ein Pagingvorgang abgebrochen wird.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<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 xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>
            DetailsView CurrentMode Example</title>
</head>
<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 Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0
Anzeigen: