ListView.DataKeys Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
public:
virtual property System::Web::UI::WebControls::DataKeyArray ^ DataKeys { System::Web::UI::WebControls::DataKeyArray ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual System.Web.UI.WebControls.DataKeyArray DataKeys { get; }
[<System.ComponentModel.Browsable(false)>]
member this.DataKeys : System.Web.UI.WebControls.DataKeyArray
Public Overridable ReadOnly Property DataKeys As DataKeyArray
Valore della proprietà
Oggetto che contiene la chiave dati per ogni elemento in un ListView controllo .
- Attributi
Esempio
Nell'esempio seguente viene illustrato come utilizzare la DataKeys proprietà per determinare i valori di chiave dati per gli elementi di un ListView controllo . Viene inoltre illustrato come mantenere la selezione dell'utente in base a un elemento di dati anziché al comportamento predefinito che usa l'indice.
void ContactsListView_SelectedIndexChanged(Object sender, EventArgs e)
{
if (ContactsListView.SelectedIndex >= 0)
ViewState["SelectedKey"] = ContactsListView.SelectedValue;
else
ViewState["SelectedKey"] = null;
}
void ContactsListView_DataBound(Object sender, EventArgs e)
{
for (int i = 0; i < ContactsListView.Items.Count; i++)
{
// Ignore values that cannot be cast as integer.
try
{
if ((int)ContactsListView.DataKeys[i].Value == (int)ViewState["SelectedKey"])
ContactsListView.SelectedIndex = i;
}
catch { }
}
}
Sub ContactsListView_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
If ContactsListView.SelectedIndex >= 0 Then
ViewState("SelectedKey") = ContactsListView.SelectedValue
Else
ViewState("SelectedKey") = Nothing
End If
End Sub
Sub ContactsListView_DataBound(ByVal sender As Object, ByVal e As EventArgs)
For i As Integer = 0 To ContactsListView.Items.Count - 1
' Ignore values that cannot be cast as integer.
Try
If Convert.ToInt32(ContactsListView.DataKeys(i).Value) = Convert.ToInt32(ViewState("SelectedKey")) Then _
ContactsListView.SelectedIndex = i
Catch
End Try
Next
End Sub
Commenti
Quando la DataKeyNames proprietà è impostata, il ListView controllo crea automaticamente un DataKey oggetto per ogni elemento nel controllo . L'oggetto DataKey contiene i valori del campo o dei campi specificati nella DataKeyNames proprietà . Gli DataKey oggetti vengono quindi aggiunti all'insieme del DataKeys controllo.
Utilizzare la DataKeys proprietà per recuperare l'oggetto DataKey per un elemento di dati specifico nel ListView controllo .
È possibile utilizzare la SelectedDataKey proprietà per recuperare l'oggetto DataKey per l'elemento attualmente selezionato. È anche possibile utilizzare la SelectedValue proprietà per recuperare direttamente il valore della chiave dati per l'elemento attualmente selezionato.
È possibile utilizzare la ListViewDataItem.DisplayIndex proprietà per recuperare l'oggetto DataKey per l'elemento per il quale è stato fatto clic su un pulsante di comando.