DetailsView.SelectedValue Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the data key value of the current record in a DetailsView control.
public:
property System::Object ^ SelectedValue { System::Object ^ get(); };
[System.ComponentModel.Browsable(false)]
public object SelectedValue { get; }
[<System.ComponentModel.Browsable(false)>]
member this.SelectedValue : obj
Public ReadOnly Property SelectedValue As Object
Property Value
The data key value of the current record in a DetailsView control.
- Attributes
Examples
The following code example demonstrates how to use the SelectedValue property to determine the data key value for the current record.
<%@ 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 CustomerDetailView_ItemUpdated(Object sender, DetailsViewUpdatedEventArgs e)
{
// Log the update operation using the key value contained
// in the SelectedValue property.
String keyValue = CustomerDetailView.SelectedValue.ToString();
LogUpdate(keyValue);
}
void LogUpdate(String keyValue)
{
// Insert code to log the update operation.
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsView SelectedValue Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>DetailsView SelectedValue Example</h3>
<asp:detailsview id="CustomerDetailView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogeneraterows="true"
autogenerateeditbutton="true"
allowpaging="true"
onitemupdated="CustomerDetailView_ItemUpdated"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<!-- 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" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country]) VALUES (@CustomerID, @CompanyName, @Address, @City, @PostalCode, @Country)"
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">
</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 CustomerDetailView_ItemUpdated(ByVal sender As Object, ByVal e As DetailsViewUpdatedEventArgs)
' Log the update operation using the key value contained
' in the SelectedValue property.
Dim keyValue As String = CustomerDetailView.SelectedValue.ToString()
LogUpdate(keyValue)
End Sub
Sub LogUpdate(ByVal keyValue As String)
' Insert code to log the update operation.
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>
DetailsView SelectedValue Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>
DetailsView SelectedValue Example</h3>
<asp:DetailsView ID="CustomerDetailView" DataSourceID="DetailsViewSource" DataKeyNames="CustomerID"
AutoGenerateRows="true" AutoGenerateEditButton="true" AllowPaging="true" OnItemUpdated="CustomerDetailView_ItemUpdated"
runat="server">
<FieldHeaderStyle BackColor="Navy" ForeColor="White" />
</asp:DetailsView>
<!-- 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" runat="server"
ConnectionString=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
InsertCommand="INSERT INTO [Customers]([CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country]) VALUES (@CustomerID, @CompanyName, @Address, @City, @PostalCode, @Country)"
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"></asp:SqlDataSource>
</form>
</body>
</html>
Remarks
Use the SelectedValue property to determine the data key value for the current record. To retrieve the actual System.Web.UI.WebControls.DataKey object that represents the data key for the record, use the DataKey property.
This property is the default property that a ControlParameter object binds to at run time. For more information, see ControlValuePropertyAttribute, ControlParameter, and Using Parameters with Data Source Controls for Filtering.