DetailsViewModeEventArgs DetailsViewModeEventArgs DetailsViewModeEventArgs DetailsViewModeEventArgs Class

Definizione

Fornisce dati per l'evento ModeChanging.Provides data for the ModeChanging event.

public ref class DetailsViewModeEventArgs : System::ComponentModel::CancelEventArgs
public class DetailsViewModeEventArgs : System.ComponentModel.CancelEventArgs
type DetailsViewModeEventArgs = class
    inherit CancelEventArgs
Public Class DetailsViewModeEventArgs
Inherits CancelEventArgs
Ereditarietà
DetailsViewModeEventArgsDetailsViewModeEventArgsDetailsViewModeEventArgsDetailsViewModeEventArgs

Esempi

Nell'esempio di codice riportato di seguito viene illustrato DetailsViewModeEventArgs come utilizzare l'oggetto passato al gestore eventi ModeChanging per l'evento per nascondere la riga del DetailsView pager quando il controllo passa alla modalità di modifica.The following code example demonstrates how to use the DetailsViewModeEventArgs object passed to the event handler for the ModeChanging event to hide the pager row when the DetailsView control transitions to 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 CustomerDetailsView_ModeChanging(Object sender, DetailsViewModeEventArgs e)
  {

    // Use the NewMode property to determine the mode to which the 
    // DetailsView control is transitioning.
    switch (e.NewMode)
    {
      case DetailsViewMode.Edit:
        // Hide the pager row and clear the Label control
        // when transitioning to edit mode.
        CustomerDetailsView.AllowPaging = false;
        MessageLabel.Text = "";
        break;
      case DetailsViewMode.ReadOnly:
        // Display the pager row and confirmation message
        // when transitioning to edit mode.
        CustomerDetailsView.AllowPaging = true;
        if (e.CancelingEdit)
        {
          MessageLabel.Text = "Update canceled.";
        }
        else
        {
          MessageLabel.Text = "Update completed.";
        }
        break;
      case DetailsViewMode.Insert:
        // Cancel the mode change if the DetailsView
        // control attempts to transition to insert 
        // mode.
        e.Cancel = true;
        break;
      default:
        MessageLabel.Text = "Unsupported mode.";
        break;
    }
    
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewModeEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>DetailsViewModeEventArgs Example</h3>
                
      <asp:detailsview id="CustomerDetailsView"
        datasourceid="DetailsViewSource"
        datakeynames="CustomerID"
        autogeneraterows="true"
        autogenerateeditbutton="true" 
        allowpaging="true"
        onmodechanging="CustomerDetailsView_ModeChanging" 
        runat="server">

      </asp:detailsview>
      
      <br/><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" autoeventwireup="false" %>

<!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_ModeChanging(ByVal sender As Object, ByVal e As DetailsViewModeEventArgs) Handles CustomerDetailsView.ModeChanging

    ' Use the NewMode property to determine the mode to which the 
    ' DetailsView control is transitioning.
    Select Case e.NewMode
    
      Case DetailsViewMode.Edit
        ' Hide the pager row and clear the Label control
        ' when transitioning to edit mode.
        CustomerDetailsView.AllowPaging = False
        MessageLabel.Text = ""

      Case DetailsViewMode.ReadOnly
        ' Display the pager row and confirmation message
        ' when transitioning to edit mode.
        CustomerDetailsView.AllowPaging = True
        If e.CancelingEdit Then
        
          MessageLabel.Text = "Update canceled."
        
        Else
        
          MessageLabel.Text = "Update completed."
        
        End If

      Case DetailsViewMode.Insert
        ' Cancel the mode change if the DetailsView
        ' control attempts to transition to insert 
        ' mode.
        e.Cancel = True

      Case Else
        MessageLabel.Text = "Unsupported mode."
          
    End Select
    
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsViewModeEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>DetailsViewModeEventArgs Example</h3>
                
      <asp:detailsview id="CustomerDetailsView"
        datasourceid="DetailsViewSource"
        datakeynames="CustomerID"
        autogeneraterows="true"
        autogenerateeditbutton="true" 
        allowpaging="true"
        runat="server">

      </asp:detailsview>
      
      <br/><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>

Commenti

L' ModeChanging evento viene generato quando un DetailsView controllo tenta di cambiare la modalità di modifica, inserimento e sola lettura, ma prima che la modalità venga effettivamente modificata.The ModeChanging event is raised when a DetailsView control attempts to change between edit, insert, and read-only mode, but before the mode actually changes. Questo consente di fornire un gestore eventi che esegue una routine personalizzata, ad esempio la configurazione del DetailsView controllo per una modalità specifica o l'annullamento della modifica della modalità, ogni volta che si verifica questo evento.This allows you to provide an event handler that performs a custom routine, such as configuring the DetailsView control for a specific mode or canceling the mode change, whenever this event occurs.

Un DetailsViewModeEventArgs oggetto viene passato al gestore eventi, che consente di determinare la modalità di modifica del DetailsView controllo, per determinare se l' ModeChanging evento è stato generato come risultato dell'annullamento di un'operazione di modifica da parte dell'utente o per indicare che deve essere annullata un'operazione di inserimento.A DetailsViewModeEventArgs object is passed to the event handler, which allows you to determine the mode to which the DetailsView control is changing, to determine whether the ModeChanging event was raised as a result of the user canceling an edit operation, or to indicate that an insert operation should be canceled. Per determinare la nuova modalità, utilizzare la NewMode proprietà.To determine the new mode, use the NewMode property. È anche possibile usare la NewMode proprietà per passare a una modalità alternativa impostando la proprietà su uno DetailsViewMode dei valori di enumerazione.You can also use the NewMode property to change to an alternate mode by setting it to one of the DetailsViewMode enumeration values. Utilizzare la CancelingEdit proprietà per determinare se l'utente ha annullato un'operazione di modifica.Use the CancelingEdit property to determine whether the user canceled an edit operation. Per annullare un'operazione di inserimento, impostare Cancel la proprietà truesu.To cancel an insert operation, set the Cancel property to true.

Per altre informazioni su come gestire gli eventi, vedere la gestione e generazione di eventi.For more information about how to handle events, see Handling and Raising Events.

Per un elenco dei valori iniziali delle proprietà di un'istanza della classe DetailsViewModeEventArgs, vedere il costruttore DetailsViewModeEventArgs.For a list of initial property values for an instance of the DetailsViewModeEventArgs class, see the DetailsViewModeEventArgs constructor.

Costruttori

DetailsViewModeEventArgs(DetailsViewMode, Boolean) DetailsViewModeEventArgs(DetailsViewMode, Boolean) DetailsViewModeEventArgs(DetailsViewMode, Boolean) DetailsViewModeEventArgs(DetailsViewMode, Boolean)

Inizializza una nuova istanza della classe DetailsViewModeEventArgs.Initializes a new instance of the DetailsViewModeEventArgs class.

Proprietà

Cancel Cancel Cancel Cancel

Ottiene o imposta un valore che indica se l'evento debba essere annullato.Gets or sets a value indicating whether the event should be canceled.

(Inherited from CancelEventArgs)
CancelingEdit CancelingEdit CancelingEdit CancelingEdit

Ottiene un valore che indica se l'evento ModeChanging è stato generato come risultato dell'annullamento da parte dell'utente di un'operazione di modifica.Gets a value indicating whether the ModeChanging event was raised as a result of the user canceling an edit operation.

NewMode NewMode NewMode NewMode

Ottiene o imposta la modalità a cui sta passando il controllo DetailsView.Gets or sets the mode to which the DetailsView control is changing.

Metodi

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Si applica a

Vedi anche