DetailsViewModeEventArgs Класс

Определение

Предоставляет данные о событии ModeChanging.

public class DetailsViewModeEventArgs : System.ComponentModel.CancelEventArgs
Наследование
DetailsViewModeEventArgs

Примеры

В следующем примере кода показано, как использовать DetailsViewModeEventArgs объект, переданный обработчику событий для события, ModeChanging чтобы скрыть строку страничного навиджа при переходе элемента управления в DetailsView режим редактирования.


<%@ 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>

Комментарии

Событие ModeChanging возникает, когда DetailsView элемент управления пытается изменить режим редактирования, вставки и режима только для чтения, но до фактического изменения режима. Это позволяет предоставить обработчик событий, который выполняет пользовательскую подпрограмму, например настройку DetailsView элемента управления для определенного режима или отмену изменения режима при каждом возникновении этого события.

Объект DetailsViewModeEventArgs передается обработчику событий, который позволяет определить режим, в котором DetailsView изменяется элемент управления, определить, было ли ModeChanging событие вызвано в результате отмены пользователем операции редактирования, или указать, что операция вставки должна быть отменена. Чтобы определить новый режим, используйте NewMode свойство . Вы также можете использовать NewMode свойство для перехода в альтернативный режим, задав для него одно из значений DetailsViewMode перечисления. Используйте свойство , CancelingEdit чтобы определить, отменил ли пользователь операцию редактирования. Чтобы отменить операцию вставки, задайте для свойства значение Canceltrue.

Дополнительные сведения об обработке событий см. в разделе Обработка и вызов событий.

Список начальных значений свойств для экземпляра класса DetailsViewModeEventArgs см. в описании конструктора DetailsViewModeEventArgs.

Конструкторы

DetailsViewModeEventArgs(DetailsViewMode, Boolean)

Инициализирует новый экземпляр класса DetailsViewModeEventArgs.

Свойства

Cancel

Возвращает или задает значение, показывающее, следует ли отменить событие.

(Унаследовано от CancelEventArgs)
CancelingEdit

Возвращает значение, указывающее, было ли вызвано событие ModeChanging пользовательской отменой операции редактирования.

NewMode

Получает или задает режим, в который переключается элемент управления DetailsView.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к

Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

См. также раздел