DetailsViewDeleteEventArgs.Values Property
Gets a dictionary of the non-key field name/value pairs for the item to delete.
Assembly: System.Web (in System.Web.dll)
Property Value
Type: System.Collections.Specialized.IOrderedDictionaryA IOrderedDictionary that contains a dictionary of the non-key field name/value pairs for the item to delete.
Use the Values property to access the values of the non-key fields for the record to be deleted. For example, you can use these values to verify the record before deleting it, or to keep a log of deleted records.
Note |
|---|
This property does not contain the key field or fields. To access the name/value pair values for the key field or fields, use the Keys property. |
The Values property returns an object that implements the IOrderedDictionary interface. The object contains DictionaryEntry objects that represent the non-key fields.
Note |
|---|
As a shortcut, you can also use the indexer of the IOrderedDictionary object to access the field values. The advantage in using the indexer is that it returns field values directly. |
The following code example demonstrates how to use the Values property to access the values of the non-key fields of the record being deleted.
<%@ 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_ItemDeleting(Object sender, DetailsViewDeleteEventArgs e) { // Get customer ID and name from the Keys and Values // properties. String keyValue = e.Keys["CustomerID"].ToString(); String customerName = e.Values["CompanyName"].ToString(); // Cancel the delete operation if the user attempts to // delete protected record. In this example, records // with a customer ID that starts with with "A" cannot // be deleted. if (keyValue.StartsWith("A")) { e.Cancel = true; MessageLabel.Text = "You cannot delete " + customerName + ". This customer is protected."; } else { MessageLabel.Text = "Row " + e.RowIndex.ToString() + " deleted."; } } </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>DetailsViewDeleteEventArgs Example</title> </head> <body> <form id="form1" runat="server"> <h3>DetailsViewDeleteEventArgs Example</h3> <asp:detailsview id="CustomerDetailsView" datasourceid="DetailsViewSource" datakeynames="CustomerID" autogeneratedeletebutton="true" autogeneraterows="true" allowpaging="true" onitemdeleting="CustomerDetailsView_ItemDeleting" runat="server"> <fieldheaderstyle backcolor="Navy" forecolor="White"/> </asp:detailsview> <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]" deletecommand="Delete [Customers] Where [CustomerID]=@CustomerID" connectionstring= "<%$ ConnectionStrings:NorthWindConnectionString%>" runat="server"/> </form> </body> </html>
Available since 2.0
