GridViewDeletedEventArgs.Values プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
削除されたレコードのキー以外のフィールドの名前と値のペアのディクショナリを取得します。
public:
property System::Collections::Specialized::IOrderedDictionary ^ Values { System::Collections::Specialized::IOrderedDictionary ^ get(); };
public System.Collections.Specialized.IOrderedDictionary Values { get; }
member this.Values : System.Collections.Specialized.IOrderedDictionary
Public ReadOnly Property Values As IOrderedDictionary
プロパティ値
削除されたレコードのキー以外のフィールドの名前と値のペアのディクショナリを格納している IOrderedDictionary。
例
次の例では、 プロパティを Values 使用して、削除されたレコードのキー以外のフィールドの値にアクセスする方法を示します。
<%@ 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_RowDeleted(Object sender, GridViewDeletedEventArgs e)
{
// Display the value of the key fields in the Keys property.
KeysMessageLabel.Text =
"The key fields for the deleted record are: <br/>";
foreach (DictionaryEntry entry in e.Keys)
{
DisplayValue(entry, KeysMessageLabel);
}
// Display the value of the non-key fields in the Values
// property.
ValuesMessageLabel.Text =
"The non-key fields for the deleted record are: <br/>";
foreach (DictionaryEntry entry in e.Values)
{
DisplayValue(entry, ValuesMessageLabel);
}
}
void DisplayValue(DictionaryEntry entry, Label displayLabel)
{
// Display the field name contained in the DictionaryEntry object.
if (entry.Key != null)
{
displayLabel.Text += "Name=" + entry.Key.ToString() + ", ";
}
else
{
displayLabel.Text += "Name=null, ";
}
// Display the field value contained in the DictionaryEntry object.
if (entry.Value != null)
{
displayLabel.Text += "Value=" + entry.Value.ToString() + "<br/>";
}
else
{
displayLabel.Text += "Value=null<br/>";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridViewDeletedEventArgs Keys and Values Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridViewDeletedEventArgs Keys and Values Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"/>
<br/>
<!-- 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"
autogeneratedeletebutton="true"
allowpaging="true"
datakeynames="CustomerID"
onrowdeleted="CustomersGridView_RowDeleted"
runat="server">
</asp:gridview>
<br/>
<asp:label id="KeysMessageLabel"
forecolor="Red"
runat="server"/>
<br/><br/>
<asp:label id="ValuesMessageLabel"
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]"
deletecommand="Delete from Customers 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_RowDeleted(ByVal sender As Object, ByVal e As GridViewDeletedEventArgs)
Dim entry As DictionaryEntry
' Display the value of the key fields in the Keys property.
KeysMessageLabel.Text = _
"The key fields for the deleted record are: <br/>"
' In VB, you cannot iterate through the DictionaryEntry objects
' in the Keys property directly. Use the CopyTo method to
' copy the objects to an array first.
Dim keysArray(e.Keys.Count - 1) As DictionaryEntry
e.Keys.CopyTo(keysArray, 0)
' Iterate through the array and display its values.
For Each entry In keysArray
DisplayValue(entry, KeysMessageLabel)
Next
' Display the value of the non-key fields in the Values
' property.
ValuesMessageLabel.Text = _
"The non-key fields for the deleted record are: <br/>"
Dim valuesArray(e.Values.Count - 1) As DictionaryEntry
e.Values.CopyTo(valuesArray, 0)
For Each entry In valuesArray
DisplayValue(entry, ValuesMessageLabel)
Next
End Sub
Sub DisplayValue(ByVal entry As DictionaryEntry, ByVal displayLabel As Label)
' Display the field name contained in the DictionaryEntry object.
If entry.Key IsNot Nothing Then
displayLabel.Text &= "Name=" & entry.Key.ToString() & ", "
Else
displayLabel.Text &= "Name=null, "
End If
' Display the field value contained in the DictionaryEntry object.
If entry.Value IsNot Nothing Then
displayLabel.Text &= "Value=" & entry.Value.ToString() & "<br/>"
Else
displayLabel.Text &= "Value=null<br/>"
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>GridViewDeletedEventArgs Keys and Values Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>GridViewDeletedEventArgs Keys and Values Example</h3>
<asp:label id="Message"
forecolor="Red"
runat="server"/>
<br/>
<!-- 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"
autogeneratedeletebutton="true"
allowpaging="true"
datakeynames="CustomerID"
onrowdeleted="CustomersGridView_RowDeleted"
runat="server">
</asp:gridview>
<br/>
<asp:label id="KeysMessageLabel"
forecolor="Red"
runat="server"/>
<br/><br/>
<asp:label id="ValuesMessageLabel"
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]"
deletecommand="Delete from Customers where CustomerID = @CustomerID"
connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
注釈
プロパティを Values 使用して、削除されたレコードのキー以外のフィールドの値にアクセスします。 たとえば、これらの値を使用して、削除されたレコードのログを保持できます。
注意
プロパティは Values 、項目テンプレートで双方向バインド式が使用されている場合にのみ設定されます。 双方向バインディング式の詳細については、「 データベースへのバインド」を参照してください。
Values プロパティは、System.Collections.Specialized.IOrderedDictionary インターフェイスを実装するオブジェクトを返します。 オブジェクトには、 System.Collections.DictionaryEntry 削除されたレコードのキー以外のフィールドを表す オブジェクトが含まれています。
注意
このプロパティには、削除されたレコードのキー フィールド (プロパティで DataKeyNames 指定) は含まれません。 キー フィールドにアクセスするには、 プロパティを Keys 使用します。
適用対象
こちらもご覧ください
.NET