GridViewUpdatedEventArgs 클래스

정의

RowUpdated 이벤트에 대한 데이터를 제공합니다.Provides data for the RowUpdated event.

public ref class GridViewUpdatedEventArgs : EventArgs
public class GridViewUpdatedEventArgs : EventArgs
type GridViewUpdatedEventArgs = class
    inherit EventArgs
Public Class GridViewUpdatedEventArgs
Inherits EventArgs
상속
GridViewUpdatedEventArgs

예제

다음 예제에서는 업데이트 작업 중에 예외가 발생 했는지 여부를 확인 하는 방법을 보여 줍니다.The following example shows how to determine whether an exception occurred during an update operation.


<%@ 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 CustomersGridView_RowUpdated(Object sender, GridViewUpdatedEventArgs e)
  {
    // Use the Exception property to determine whether an exception
    // occurred during the update operation.
    if (e.Exception == null)
    {
      // Sometimes an error might occur that does not raise an 
      // exception, but prevents the update operation from 
      // completing. Use the AffectedRows property to determine 
      // whether the record was actually updated. 
      if (e.AffectedRows == 1)
      {
        // Use the Keys property to get the value of the key field.
        String keyFieldValue = e.Keys["CustomerID"].ToString();

        // Display a confirmation message.
        Message.Text = "Record " + keyFieldValue +
          " updated successfully. ";

        // Display the new and original values.
        DisplayValues((OrderedDictionary)e.NewValues, (OrderedDictionary)e.OldValues);
      }
      else
      {
        // Display an error message.
        Message.Text = "An error occurred during the update operation.";

        // When an error occurs, keep the GridView
        // control in edit mode.
        e.KeepInEditMode = true;
      }
    }
    else
    {
      // Insert the code to handle the exception.
      Message.Text = e.Exception.Message;

      // Use the ExceptionHandled property to indicate that the 
      // exception is already handled.
      e.ExceptionHandled = true;

      e.KeepInEditMode = true;
    }
  }

  void DisplayValues(OrderedDictionary newValues, OrderedDictionary oldValues)
  {

    Message.Text += "<br/></br>";

    // Iterate through the new and old values. Display the
    // values on the page.
    for (int i = 0; i < oldValues.Count; i++)
    {
      Message.Text += "Old Value=" + oldValues[i].ToString() +
        ", New Value=" + newValues[i].ToString() + "<br/>";
    }

    Message.Text += "</br>";

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridViewUpdatedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridViewUpdatedEventArgs Example</h3>
            
      <!-- The GridView control automatically sets the columns     -->
      <!-- specified in the datakeynames property as read-only.    -->
      <!-- No input controls are rendered for these columns in     -->
      <!-- edit mode.                                              -->
      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="true"
        autogenerateeditbutton="true"
        allowpaging="true" 
        datakeynames="CustomerID"
        onrowupdated="CustomersGridView_RowUpdated" 
        runat="server">
      </asp:gridview>
      
      <br/>
      
      <asp:label id="Message"
        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="CustomersSqlDataSource"  
        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">
      </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 CustomersGridView_RowUpdated(sender As Object, e As GridViewUpdatedEventArgs)
  
    ' Use the Exception property to determine whether an exception
    ' occurred during the update operation.
    If e.Exception Is Nothing Then
    
      ' Sometimes an error might occur that does not raise an 
      ' exception, but prevents the update operation from 
      ' completing. Use the AffectedRows property to determine 
      ' whether the record was actually updated. 
      If e.AffectedRows = 1 Then
      
        ' Use the Keys property to get the value of the key field.
        Dim keyFieldValue As String = e.Keys("CustomerID").ToString()

        ' Display a confirmation message.
        Message.Text = "Record " & keyFieldValue & _
          " updated successfully. "

        ' Display the new and original values.
        DisplayValues(CType(e.NewValues, OrderedDictionary), CType(e.OldValues, OrderedDictionary))

      Else
      
        ' Display an error message.
        Message.Text = "An error occurred during the update operation."

        ' When an error occurs, keep the GridView
        ' control in edit mode.
        e.KeepInEditMode = True
        
      End If
    
    Else
    
      ' Insert the code to handle the exception.
      Message.Text = e.Exception.Message

      ' Use the ExceptionHandled property to indicate that the 
      ' exception is already handled.
      e.ExceptionHandled = True

      e.KeepInEditMode = True
    
    End If
  
  End Sub

  Sub DisplayValues(ByVal newValues As OrderedDictionary, ByVal oldValues As OrderedDictionary)

    Message.Text &= "<br/></br>"

    ' Iterate through the new and old values. Display the
    ' values on the page.
    Dim i As Integer
    For i = 0 To oldValues.Count - 1
    
      Message.Text &= "Old Value=" & oldValues(i).ToString() & _
        ", New Value=" & newValues(i).ToString() & "<br/>"
    Next

    Message.Text &= "</br>"

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridViewUpdatedEventArgs Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridViewUpdatedEventArgs Example</h3>
            
      <!-- The GridView control automatically sets the columns     -->
      <!-- specified in the datakeynames property as read-only.    -->
      <!-- No input controls are rendered for these columns in     -->
      <!-- edit mode.                                              -->
      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="true"
        autogenerateeditbutton="true"
        allowpaging="true" 
        datakeynames="CustomerID"
        onrowupdated="CustomersGridView_RowUpdated" 
        runat="server">
      </asp:gridview>
      
      <br/>
      
      <asp:label id="Message"
        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="CustomersSqlDataSource"  
        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">
      </asp:sqldatasource>
            
    </form>
  </body>
</html>

설명

GridView 를 발생 시킵니다 합니다 RowUpdated 이벤트를 컨트롤에 있는 업데이트 단추를 클릭 한 후를 GridView 레코드를 업데이트 합니다.The GridView control raises the RowUpdated event when an Update button in the control is clicked, but after the GridView control updates the record. (업데이트 단추는 단추 컨트롤 CommandName 속성을 "Update"로 설정 합니다.) 업데이트 작업의 결과 확인 하는 등이 이벤트가 발생할 때마다 사용자 지정 루틴을 수행할 수 있습니다.(An Update button is a button control whose CommandName property is set to "Update".) You can perform a custom routine whenever this event occurs, such as checking the results of an update operation.

GridViewUpdatedEventArgs 개체가 영향을 받는 레코드와 발생 한 예외의 수를 확인할 수 있는 이벤트 처리기에 전달 됩니다.A GridViewUpdatedEventArgs object is passed to the event handler, which enables you to determine the number of records that were affected and any exceptions that might have occurred. 업데이트 작업으로 영향을 받는 레코드 수를 확인 하려면 사용 된 AffectedRows 속성입니다.To determine the number of records that were affected by the update operation, use the AffectedRows property. 예외 발생 했는지 여부를 확인 하려면 사용 된 Exception 속성입니다.To determine whether any exceptions occurred, use the Exception property. 예외가 처리 되었는지 여부를 이벤트 처리기를 설정 하 여를 나타낼 수도 있습니다는 ExceptionHandled 속성입니다.You can also indicate whether the exception was handled in the event handler by setting the ExceptionHandled property.

업데이트 된 레코드에 대 한 키 필드 값에 액세스 하려면 사용 된 Keys 속성입니다.To access the key field values for the updated record, use the Keys property. 키가 아닌 필드의 원래 값을 사용 하 여 액세스할 수 있습니다는 OldValues 속성입니다.You can access the original non-key field values by using the OldValues property. 사용 하 여 업데이트 된 키가 아닌 필드 값에 액세스할 수 있습니다는 NewValues 속성입니다.You can access the updated non-key field values by using the NewValues properties.

기본적으로 GridView 컨트롤이 업데이트 작업 후 읽기 전용 모드로 돌아갑니다.By default, the GridView control returns to read-only mode after an update operation. 업데이트 작업 중에 발생 한 예외를 처리 하는 경우 유지할 수 있습니다 합니다 GridView 컨트롤을 설정 하 여 편집 모드로 합니다 KeepInEditMode 속성을 true입니다.When you handle an exception that occurred during the update operation, you can keep the GridView control in edit mode by setting the KeepInEditMode property to true.

이벤트를 처리 하는 방법에 대 한 자세한 내용은 참조 하세요. 이벤트 처리 및 발생합니다.For more information about how to handle events, see Handling and Raising Events.

GridViewUpdatedEventArgs 클래스의 인스턴스에 대한 초기 속성 값 목록은 GridViewUpdatedEventArgs 생성자를 참조하십시오.For a list of initial property values for an instance of the GridViewUpdatedEventArgs class, see the GridViewUpdatedEventArgs constructor.

생성자

GridViewUpdatedEventArgs(Int32, Exception)

GridViewUpdatedEventArgs 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the GridViewUpdatedEventArgs class.

속성

AffectedRows

업데이트 작업의 영향을 받는 행의 수를 가져옵니다.Gets the number of rows that were affected by the update operation.

Exception

업데이트 작업 중에 발생한 예외(있을 경우)를 가져옵니다.Gets the exception (if any) that was raised during the update operation.

ExceptionHandled

업데이트 작업 중에 발생한 예외가 이벤트 처리기에서 처리되었는지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether an exception that was raised during the update operation was handled in the event handler.

KeepInEditMode

업데이트 작업 후 GridView 컨트롤을 편집 모드로 유지할지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether the GridView control should remain in edit mode after an update operation.

Keys

업데이트된 레코드에 대한 키 필드의 이름/값 쌍이 들어 있는 사전을 가져옵니다.Gets a dictionary that contains the key field name/value pairs for the updated record.

NewValues

업데이트된 레코드의 새 필드 이름/값 쌍이 들어 있는 사전을 가져옵니다.Gets a dictionary that contains the new field name/value pairs for the updated record.

OldValues

업데이트된 레코드의 원래 필드 이름/값 쌍이 들어 있는 사전을 가져옵니다.Gets a dictionary that contains the original field name/value pairs for the updated record.

메서드

Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

적용 대상

추가 정보