ListControl.SelectedValue Proprietà

Definizione

Ottiene il valore dell'elemento selezionato nell'elenco o seleziona l'elemento nell'elenco che contiene il valore specificato.Gets the value of the selected item in the list control, or selects the item in the list control that contains the specified value.

public:
 virtual property System::String ^ SelectedValue { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.Browsable(false)]
[System.ComponentModel.Bindable(true)]
public virtual string SelectedValue { get; set; }
[System.ComponentModel.Browsable(false)]
[System.Web.UI.Themeable(false)]
[System.ComponentModel.Bindable(true, System.ComponentModel.BindingDirection.TwoWay)]
public virtual string SelectedValue { get; set; }
member this.SelectedValue : string with get, set
Public Overridable Property SelectedValue As String

Valore della proprietà

Valore dell'elemento selezionato nell'elenco.The value of the selected item in the list control. Il valore predefinito è una stringa vuota ("").The default is an empty string ("").

Attributi

Eccezioni

Il valore selezionato non si trova nell'elenco dei valori disponibili e lo stato di visualizzazione o l'altro stato è stato caricato (è stato eseguito un postback).The selected value is not in the list of available values and view state or other state has been loaded (a postback has been performed).

Esempio

Nell'esempio seguente viene illustrato come utilizzare la proprietà SelectedValue per selezionare un elemento in un controllo ListBox.The following example demonstrates how to use the SelectedValue property to select an item in a ListBox control. Si noti che questa proprietà può essere utilizzata anche per recuperare il valore dell'elemento selezionato.Notice that this property can also be used to retrieve the value of the selected item.

Importante

L'esempio include una casella di testo che accetta l'input dell'utente e rappresenta quindi una potenziale minaccia alla sicurezza.This example has a text box that accepts user input, which is a potential security threat. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.For more information, see Script Exploits Overview.


<%@ Page Language="C#" AutoEventWireup="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" > 

<head runat="server">
    <title> ListControl SelectedValue Example </title>
<script runat="server">

      void Button_Click(Object sender, EventArgs e)
      {

         // Perform this operation in a try-catch block in case the item is not found.
         try
         {
            List.SelectedValue = ItemTextBox.Text;
            MessageLabel.Text = "You selected " + List.SelectedValue + ".";
         }
         catch (Exception ex)
         {
            List.SelectedValue = null;
            MessageLabel.Text = "Item not found in ListBox control.";
         }
             
      }

   </script>

</head>

<body>

   <form id="form1" runat="server">

      <h3> ListControl SelectedValue Example </h3>
 
      <asp:ListBox ID="List"
           runat="server">

         <asp:ListItem>Item 1</asp:ListItem>
         <asp:ListItem>Item 2</asp:ListItem>
         <asp:ListItem>Item 3</asp:ListItem>
         <asp:ListItem>Item 4</asp:ListItem>

      </asp:ListBox>

      <hr />

      Enter the value of the item to select: <br />
      <asp:TextBox ID="ItemTextBox"
           MaxLength="6"
           Text="Item 1"
           runat="server"/>

      &nbsp;&nbsp;

      <asp:Button ID="SelectButton"
           Text="Select Item"
           OnClick="Button_Click"
           runat="server"/>

      <br /><br />

      <asp:Label ID="MessageLabel"
           runat="server"/>     

   </form>

</body>
</html>

<%@ Page Language="VB" AutoEventWireup="True" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" > 

<head runat="server">
    <title> ListControl SelectedValue Example </title>
<script runat="server">

      Sub Button_Click(sender As Object, e As EventArgs)

         ' Perform this operation in a try-catch block in case the item is not found.
         Try
   
            List.SelectedValue = ItemTextBox.Text
            MessageLabel.Text = "You selected " & List.SelectedValue + "."
        
         Catch ex As Exception
     
            List.SelectedValue = Nothing         
            MessageLabel.Text = "Item not found in ListBox control."
     
         End Try
             
      End Sub

   </script>

</head>

<body>

   <form id="form1" runat="server">

      <h3> ListControl SelectedValue Example </h3>
 
      <asp:ListBox ID="List"
           runat="server">

         <asp:ListItem>Item 1</asp:ListItem>
         <asp:ListItem>Item 2</asp:ListItem>
         <asp:ListItem>Item 3</asp:ListItem>
         <asp:ListItem>Item 4</asp:ListItem>

      </asp:ListBox>

      <hr />

      Enter the value of the item to select: <br />
      <asp:TextBox ID="ItemTextBox"
           MaxLength="6"
           Text="Item 1"
           runat="server"/>

      &nbsp;&nbsp;

      <asp:Button ID="SelectButton"
           Text="Select Item"
           OnClick="Button_Click"
           runat="server"/>

      <br /><br />

      <asp:Label ID="MessageLabel"
           runat="server"/>     

   </form>

</body>
</html>

Commenti

Questa proprietà restituisce la proprietà Value del ListItemselezionato.This property returns the Value property of the selected ListItem. La proprietà SelectedValue viene comunemente utilizzata per determinare il valore dell'elemento selezionato nel controllo elenco.The SelectedValue property is commonly used to determine the value of the selected item in the list control. Se sono selezionati più elementi, viene restituito il valore dell'elemento selezionato con l'indice più basso.If multiple items are selected, the value of the selected item with the lowest index is returned. Se non è selezionato alcun elemento, viene restituita una stringa vuota ("").If no item is selected, an empty string ("") is returned.

È inoltre possibile utilizzare la proprietà SelectedValue per selezionare un elemento nel controllo elenco impostando il valore dell'elemento.The SelectedValue property can also be used to select an item in the list control by setting it with the value of the item.

Questa proprietà non può essere impostata da temi oppure temi di fogli di stile.This property cannot be set by themes or style sheet themes. Per ulteriori informazioni, vedere i temi e le interfaccedi ThemeableAttribute e ASP.NET.For more information, see ThemeableAttribute and ASP.NET Themes and Skins.

Quando il valore selezionato non è presente nell'elenco dei valori disponibili e viene eseguito un postback, viene generata un'eccezione ArgumentOutOfRangeException.When the selected value is not in the list of available values and a postback is performed, an ArgumentOutOfRangeException exception is thrown. Nell'esempio seguente viene illustrato come intercettare un valore non valido prima che si verifichi il postback:The following example shows how to catch an invalid value before postback occurs:

Me.DropDownList1.Items.Add(New ListItem( Text="Hello", Value="1" ))
If DropDownList1.Items.FindByValue("2") IsNot Nothing Then
    Response.Write("Found")
End If
this.DropDownList1.Items.Add(new ListItem{ Text="Hello", Value="1" });
if(DropDownList1.Items.FindByValue("2") != null) {
    Response.Write("Found");
}

Si applica a

Vedi anche