ListView.DataKeys Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
Valor da propriedade
Um objeto que contém a chave de dados de cada item em um controle ListView.
- Atributos
Exemplos
O exemplo a seguir mostra como usar a DataKeys propriedade para determinar os valores de chave de dados para os itens em um ListView controle . Ele também mostra como preservar a seleção do usuário com base em um item de dados em vez do comportamento padrão que usa o índice.
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
Comentários
Quando a DataKeyNames propriedade é definida, o ListView controle cria automaticamente um DataKey objeto para cada item no controle . O DataKey objeto contém os valores do campo ou campos especificados na DataKeyNames propriedade . Em DataKey seguida, os objetos são adicionados à coleção do DataKeys controle.
Use a DataKeys propriedade para recuperar o DataKey objeto de um item de dados específico no ListView controle .
Você pode usar a SelectedDataKey propriedade para recuperar o DataKey objeto para o item selecionado no momento. Você também pode usar a SelectedValue propriedade para recuperar o valor da chave de dados para o item selecionado no momento diretamente.
Você pode usar a ListViewDataItem.DisplayIndex propriedade para recuperar o DataKey objeto do item para o qual um botão de comando foi clicado.