GridViewUpdatedEventArgs クラス
アセンブリ: System.Web (system.web.dll 内)
構文
解説GridView コントロールは、コントロール内の Update ボタン (CommandName プロパティが "Update" に設定されたボタン) がクリックされた場合に、GridView コントロールが実際にレコードを更新した後に RowUpdated イベントを発生させます。これにより、このイベントが発生するたびにカスタム ルーチン (更新操作の結果を確認するなど) を実行するイベント処理メソッドを提供できます。
GridViewUpdatedEventArgs オブジェクトがイベント処理メソッドに渡されることにより、影響を受けたレコード数および発生した例外を確認できます。更新操作の影響を受けたレコード数を確認するには、AffectedRows プロパティを使用します。例外が発生しているかどうかを確認するには、Exception プロパティを使用します。ExceptionHandled プロパティを設定することにより、イベント処理メソッドで既に例外が処理されたかどうかを示すこともできます。更新されたレコードのキー フィールド値にアクセスする必要がある場合は、Keys プロパティを使用します。OldValues プロパティを使用して元のキー フィールド以外の値にアクセスしたり、NewValues プロパティを使用して更新後のキー フィールド以外の値にアクセスしたりできます。
既定では、GridView コントロールは、更新操作の後、読み取り専用モードに戻ります。更新操作中に発生した例外を処理する場合、KeepInEditMode プロパティを true に設定することによって、GridView コントロールを編集モードのまま維持できます。
イベント処理の詳細については、「イベントの利用」を参照してください。
GridViewUpdatedEventArgs クラスのインスタンスの初期プロパティ値の一覧については、GridViewUpdatedEventArgs コンストラクタのトピックを参照してください。
使用例RowUpdated イベントのイベント処理メソッドに渡された GridViewUpdatedEventArgs オブジェクトを使用して、更新操作中に例外が発生したかどうかを確認する方法を次の例に示します。
<%@ Page language="VB" %> <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> <body> <form 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="C#" %> <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> <body> <form 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>
.NET Framework のセキュリティ
継承階層System.EventArgs
System.Web.UI.WebControls.GridViewUpdatedEventArgs
スレッド セーフ
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照GridViewUpdatedEventArgs コンストラクタ
アセンブリ: System.Web (system.web.dll 内)
構文Dim affectedRows As Integer Dim e As Exception Dim instance As New GridViewUpdatedEventArgs(affectedRows, e)
解説このコンストラクタを使用して、GridViewUpdatedEventArgs クラスの新しいインスタンスを初期化します。
GridViewUpdatedEventArgs クラスのインスタンスの初期プロパティ値を次の表に示します。
| AffectedRows | affectedRows パラメータの値。 |
| ExceptionHandled | |
| KeepInEditMode |
メモ |
|---|
プラットフォームWindows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
バージョン情報
参照GridViewUpdatedEventArgs プロパティ
パブリック プロパティ| 名前 | 説明 | |
|---|---|---|
| AffectedRows | 更新操作の影響を受けた行の数を取得します。 |
| Exception | 更新操作中に例外が発生した場合は、その例外を取得します。 |
| ExceptionHandled | 更新操作中に発生した例外がイベント ハンドラで処理されたかどうかを示す値を取得または設定します。 |
| KeepInEditMode | 更新操作後に GridView コントロールを編集モードのまま維持するかどうかを示す値を取得または設定します。 |
| Keys | 更新されたレコードのキー フィールドの名前と値のペアが格納されているディクショナリを取得します。 |
| NewValues | 更新されたレコードの新しいフィールドの名前と値のペアが格納されているディクショナリを取得します。 |
| OldValues | 更新されたレコードの元のフィールドの名前と値のペアが格納されているディクショナリを取得します。 |
参照GridViewUpdatedEventArgs メソッド
パブリック メソッド| 名前 | 説明 | |
|---|---|---|
| Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 ( Object から継承されます。) |
| GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 ( Object から継承されます。) |
| GetType | 現在のインスタンスの Type を取得します。 ( Object から継承されます。) |
| ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 ( Object から継承されます。) |
| ToString | 現在の Object を表す String を返します。 ( Object から継承されます。) |
プロテクト メソッド| 名前 | 説明 | |
|---|---|---|
| Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 ( Object から継承されます。) |
| MemberwiseClone | 現在の Object の簡易コピーを作成します。 ( Object から継承されます。) |
参照GridViewUpdatedEventArgs メンバ
GridViewUpdatedEventArgs データ型で公開されるメンバを以下の表に示します。
パブリック コンストラクタ
パブリック プロパティ| 名前 | 説明 | |
|---|---|---|
| AffectedRows | 更新操作の影響を受けた行の数を取得します。 |
| Exception | 更新操作中に例外が発生した場合は、その例外を取得します。 |
| ExceptionHandled | 更新操作中に発生した例外がイベント ハンドラで処理されたかどうかを示す値を取得または設定します。 |
| KeepInEditMode | 更新操作後に GridView コントロールを編集モードのまま維持するかどうかを示す値を取得または設定します。 |
| Keys | 更新されたレコードのキー フィールドの名前と値のペアが格納されているディクショナリを取得します。 |
| NewValues | 更新されたレコードの新しいフィールドの名前と値のペアが格納されているディクショナリを取得します。 |
| OldValues | 更新されたレコードの元のフィールドの名前と値のペアが格納されているディクショナリを取得します。 |
パブリック メソッド| 名前 | 説明 | |
|---|---|---|
| Equals | オーバーロードされます。 2 つの Object インスタンスが等しいかどうかを判断します。 (Object から継承されます。) |
| GetHashCode | 特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用に適しています。 (Object から継承されます。) |
| GetType | 現在のインスタンスの Type を取得します。 (Object から継承されます。) |
| ReferenceEquals | 指定した複数の Object インスタンスが同一かどうかを判断します。 (Object から継承されます。) |
| ToString | 現在の Object を表す String を返します。 (Object から継承されます。) |
プロテクト メソッド| 名前 | 説明 | |
|---|---|---|
| Finalize | Object がガベージ コレクションにより収集される前に、その Object がリソースを解放し、その他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。) |
| MemberwiseClone | 現在の Object の簡易コピーを作成します。 (Object から継承されます。) |
参照Weblioに収録されているすべての辞書からGridViewUpdatedEventArgsを検索する場合は、下記のリンクをクリックしてください。
全ての辞書からGridViewUpdatedEventArgs
を検索
- GridViewUpdatedEventArgsのページへのリンク
.gif)