DetailsViewPageEventArgs Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Innehåller data för PageIndexChanging händelsen.
public ref class DetailsViewPageEventArgs : System::ComponentModel::CancelEventArgs
public class DetailsViewPageEventArgs : System.ComponentModel.CancelEventArgs
type DetailsViewPageEventArgs = class
inherit CancelEventArgs
Public Class DetailsViewPageEventArgs
Inherits CancelEventArgs
- Arv
Exempel
I följande kodexempel visas hur du använder objektet DetailsViewPageEventArgs som skickas till händelsehanteraren för händelsen för PageIndexChanging att avbryta en växlingsåtgärd när användaren försöker navigera till en annan sida medan DetailsView kontrollen är i redigeringsläge.
<%@ 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 CustomerDetailsView_PageIndexChanging(Object sender, DetailsViewPageEventArgs e)
{
// Cancel the paging operation if the DetailsView control
// in edit mode.
if (CustomerDetailsView.CurrentMode == DetailsViewMode.Edit)
{
e.Cancel = true;
// Display an error message.
int newPage = e.NewPageIndex + 1;
MessageLabel.Text = "Please update the current record before to moving to page " +
newPage.ToString() + ".";
}
}
void CustomerDetailsView_ModeChanging(Object sender, DetailsViewModeEventArgs e)
{
// Clear the message label when the user cancels edit mode.
if (e.CancelingEdit)
{
MessageLabel.Text = "";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewPageEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewPageEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
autogeneraterows="true"
autogenerateeditbutton="true"
datakeynames="CustomerID"
allowpaging="true"
onpageindexchanging="CustomerDetailsView_PageIndexChanging"
onmodechanging="CustomerDetailsView_ModeChanging"
runat="server">
<pagersettings position="Bottom"/>
</asp:detailsview>
<br/>
<asp:label id="MessageLabel"
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"
selectcommand="Select [CustomerID], [CompanyName], [Address],
[City], [PostalCode], [Country] From [Customers]"
updatecommand="Update [Customers] Set
[CompanyName]=@CompanyName, [Address]=@Address,
[City]=@City, [PostalCode]=@PostalCode,
[Country]=@Country
Where [CustomerID]=@CustomerID"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</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">
<script runat="server">
Sub CustomerDetailsView_PageIndexChanging(ByVal sender As Object, ByVal e As DetailsViewPageEventArgs)
' Cancel the paging operation if the DetailsView control
' in edit mode.
If CustomerDetailsView.CurrentMode = DetailsViewMode.Edit Then
e.Cancel = True
' Display an error message.
Dim newPage As Integer = e.NewPageIndex + 1
MessageLabel.Text = "Please update the current record before to moving to page " & _
newPage.ToString() & "."
End If
End Sub
Sub CustomerDetailsView_ModeChanging(ByVal sender As Object, ByVal e As DetailsViewModeEventArgs)
' Clear the message label when the user cancels edit mode.
If e.CancelingEdit Then
MessageLabel.Text = ""
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewPageEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewPageEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
autogeneraterows="true"
autogenerateeditbutton="true"
datakeynames="CustomerID"
allowpaging="true"
onpageindexchanging="CustomerDetailsView_PageIndexChanging"
onmodechanging="CustomerDetailsView_ModeChanging"
runat="server">
<pagersettings position="Bottom"/>
</asp:detailsview>
<br/>
<asp:label id="MessageLabel"
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"
selectcommand="Select [CustomerID], [CompanyName], [Address],
[City], [PostalCode], [Country] From [Customers]"
updatecommand="Update [Customers] Set
[CompanyName]=@CompanyName, [Address]=@Address,
[City]=@City, [PostalCode]=@PostalCode,
[Country]=@Country
Where [CustomerID]=@CustomerID"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Kommentarer
Kontrollen DetailsView genererar PageIndexChanging händelsen när en personsökarknapp (en knapp med dess CommandName egenskap inställd på "Sida") i kontrollen klickas, men innan DetailsView kontrollen hanterar växlingsåtgärden. På så sätt kan du ange en händelsehanterare som utför en anpassad rutin, till exempel avbryta växlingsåtgärden, när den här händelsen inträffar.
Note
Pager-knappar finns vanligtvis på sidans rad i en DetailsView kontroll.
Ett DetailsViewPageEventArgs objekt skickas till händelsehanteraren, vilket gör att du kan fastställa indexet för den sida som användaren har valt och ange om växlingsåtgärden ska avbrytas. Använd egenskapen för att fastställa indexet för den sida som användaren NewPageIndex har valt. Om du vill avbryta växlingsåtgärden Cancel anger du objektets DetailsViewPageEventArgs egenskap till true.
Mer information om hur du hanterar händelser finns i Hantera och höja händelser.
En lista över initiala egenskapsvärden för en instans av DetailsViewPageEventArgs klassen finns i DetailsViewPageEventArgs konstruktorn.
Konstruktorer
| Name | Description |
|---|---|
| DetailsViewPageEventArgs(Int32) |
Initierar en ny instans av DetailsViewPageEventArgs klassen. |
Egenskaper
| Name | Description |
|---|---|
| Cancel |
Hämtar eller anger ett värde som anger om händelsen ska avbrytas. (Ärvd från CancelEventArgs) |
| NewPageIndex |
Hämtar eller anger indexet för den nya sidan som ska visas i DetailsView kontrollen. |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |