DetailsView.ModeChanging DetailsView.ModeChanging DetailsView.ModeChanging DetailsView.ModeChanging Event

Definition

Tritt ein, wenn ein DetailsView-Steuerelement versucht, zwischen dem Bearbeitungsmodus, Einfügemodus und dem schreibgeschützten Modus zu wechseln, allerdings bevor die CurrentMode-Eigenschaft aktualisiert wurde.Occurs when a DetailsView control attempts to change between edit, insert, and read-only mode, but before the CurrentMode property is updated.

public:
 event System::Web::UI::WebControls::DetailsViewModeEventHandler ^ ModeChanging;
public event System.Web.UI.WebControls.DetailsViewModeEventHandler ModeChanging;
member this.ModeChanging : System.Web.UI.WebControls.DetailsViewModeEventHandler 
Public Custom Event ModeChanging As DetailsViewModeEventHandler 

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie das ModeChanging -Ereignis verwendet wird, um das Pagingfeature zu deaktivieren, wenn sich das DetailsView Steuerelement im Bearbeitungsmodus befindet.The following code example demonstrates how to use the ModeChanging event to disable the paging feature when the DetailsView control is in edit mode.


<%@ 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_ModeChanging(Object sender, DetailsViewModeEventArgs e)
  {
    // Disable the paging feature in edit mode.
    if (e.NewMode == DetailsViewMode.Edit)
    {
        CustomerDetailView.AllowPaging = false;
    }
    else
    {
        CustomerDetailView.AllowPaging = true;
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsView ModeChanging Example</title>
</head>
<body>
    <form id="Form1" runat="server">
        
      <h3>DetailsView ModeChanging Example</h3>
                
        <asp:detailsview id="CustomerDetailView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogeneraterows="true"
          autogenerateeditbutton="true" 
          allowpaging="true"
          onmodechanging="CustomerDetailView_ModeChanging" 
          runat="server">
               
          <fieldheaderstyle 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">
<script runat="server">

    Sub CustomerDetailView_ModeChanging(ByVal sender As Object, ByVal e As DetailsViewModeEventArgs)
        ' Disable the paging feature in edit mode.
        If e.NewMode = DetailsViewMode.Edit Then
            CustomerDetailView.AllowPaging = False
        Else
            CustomerDetailView.AllowPaging = True
        End If
    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsView ModeChanging Example</title>
</head>
<body>
    <form id="Form1" runat="server">
        
      <h3>DetailsView ModeChanging Example</h3>
                
        <asp:detailsview id="CustomerDetailView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          autogeneraterows="true"
          autogenerateeditbutton="true" 
          allowpaging="true"
          onmodechanging="CustomerDetailView_ModeChanging" 
          runat="server">
               
          <fieldheaderstyle 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>

Hinweise

Das ModeChanging -Ereignis wird ausgelöst, DetailsView wenn ein Steuerelement versucht, zwischen dem Bearbeitungs-, Einfügungs-und schreibgeschützten CurrentMode Modus zu wechseln, aber bevor die-Eigenschaft aktualisiert wird.The ModeChanging event is raised when a DetailsView control attempts to change between edit, insert, and read-only mode, but before the CurrentMode property is updated. Dies ermöglicht Ihnen die Bereitstellung eines Ereignis Handlers, der eine benutzerdefinierte Routine ausführt, z. b. das Abbrechen der Modusänderung, wenn dieses Ereignis auftritt.This allows you to provide an event handler that performs a custom routine, such as canceling the mode change, whenever this event occurs.

Ein DetailsViewModeEventArgs -Objekt wird an den-Ereignishandler übergeben, der es Ihnen ermöglicht, den neuen Modus zu bestimmen, um zu bestimmen, ob die Modusänderung das Ergebnis des Abbruchs eines Bearbeitungsvorgangs durch den Benutzer oder das Abbrechen der Modusänderung war.A DetailsViewModeEventArgs object is passed to the event handler, which allows you to determine the new mode, to determine whether the mode change was a result of the user canceling an edit operation, or to cancel the mode change. Verwenden Sie die NewMode -Eigenschaft, um den neuen Modus zu bestimmen.To determine the new mode, use the NewMode property. Verwenden Sie die CancelingEdit -Eigenschaft, um zu bestimmen, ob die Modusänderung das Ergebnis des Absetzens eines Bearbeitungsvorgangs durch den Benutzer war.To determine whether the mode change was a result of the user canceling an edit operation, use the CancelingEdit property. Sie können die Änderung des Modus abbrechen, indem Cancel Sie die true-Eigenschaft auf festlegen.You can cancel the mode change by setting the Cancel property to true.

Weitere Informationen zum Behandeln von Ereignissen finden Sie unter behandeln und Auslösen von Ereignissen.For more information about how to handle events, see Handling and Raising Events.

Gilt für:

Siehe auch