GridViewUpdatedEventArgs 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
RowUpdated 이벤트에 대한 데이터를 제공합니다.
public ref class GridViewUpdatedEventArgs : EventArgs
public class GridViewUpdatedEventArgs : EventArgs
type GridViewUpdatedEventArgs = class
inherit EventArgs
Public Class GridViewUpdatedEventArgs
Inherits EventArgs
- 상속
예제
다음 예제에서는 업데이트 작업 중에 예외가 발생 했는지 여부를 확인 하는 방법을 보여 줍니다.
<%@ 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 레코드를 업데이트 합니다. (업데이트 단추는 단추 컨트롤 CommandName
속성을 "Update"로 설정 합니다.) 업데이트 작업의 결과 확인 하는 등이 이벤트가 발생할 때마다 사용자 지정 루틴을 수행할 수 있습니다.
GridViewUpdatedEventArgs 개체가 영향을 받는 레코드와 발생 한 예외의 수를 확인할 수 있는 이벤트 처리기에 전달 됩니다. 업데이트 작업으로 영향을 받는 레코드 수를 확인 하려면 사용 된 AffectedRows 속성입니다. 예외 발생 했는지 여부를 확인 하려면 사용 된 Exception 속성입니다. 예외가 처리 되었는지 여부를 이벤트 처리기를 설정 하 여를 나타낼 수도 있습니다는 ExceptionHandled 속성입니다.
업데이트 된 레코드에 대 한 키 필드 값에 액세스 하려면 사용 된 Keys 속성입니다. 키가 아닌 필드의 원래 값을 사용 하 여 액세스할 수 있습니다는 OldValues 속성입니다. 사용 하 여 업데이트 된 키가 아닌 필드 값에 액세스할 수 있습니다는 NewValues 속성입니다.
기본적으로 GridView 컨트롤이 업데이트 작업 후 읽기 전용 모드로 돌아갑니다. 업데이트 작업 중에 발생 한 예외를 처리 하는 경우 유지할 수 있습니다 합니다 GridView 컨트롤을 설정 하 여 편집 모드로 합니다 KeepInEditMode 속성을 true
입니다.
이벤트를 처리 하는 방법에 대 한 자세한 내용은 참조 하세요. 이벤트 처리 및 발생합니다.
GridViewUpdatedEventArgs 클래스의 인스턴스에 대한 초기 속성 값 목록은 GridViewUpdatedEventArgs 생성자를 참조하십시오.
생성자
GridViewUpdatedEventArgs(Int32, Exception) |
GridViewUpdatedEventArgs 클래스의 새 인스턴스를 초기화합니다. |
속성
AffectedRows |
업데이트 작업의 영향을 받는 행의 수를 가져옵니다. |
Exception |
업데이트 작업 중에 발생한 예외(있을 경우)를 가져옵니다. |
ExceptionHandled |
업데이트 작업 중에 발생한 예외가 이벤트 처리기에서 처리되었는지 여부를 나타내는 값을 가져오거나 설정합니다. |
KeepInEditMode |
업데이트 작업 후 GridView 컨트롤을 편집 모드로 유지할지 여부를 나타내는 값을 가져오거나 설정합니다. |
Keys |
업데이트된 레코드에 대한 키 필드의 이름/값 쌍이 들어 있는 사전을 가져옵니다. |
NewValues |
업데이트된 레코드의 새 필드 이름/값 쌍이 들어 있는 사전을 가져옵니다. |
OldValues |
업데이트된 레코드의 원래 필드 이름/값 쌍이 들어 있는 사전을 가져옵니다. |
메서드
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
적용 대상
추가 정보
.NET