Aracılığıyla paylaş


ListView.DataKeys Özellik

Tanım

Denetimdeki DataKey her öğe için veri anahtarı değerini temsil eden nesne ListView koleksiyonunu alır.

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

Özellik Değeri

DataKeyArray

Denetimdeki her öğe için veri anahtarını içeren nesne ListView .

Öznitelikler

Örnekler

Aşağıdaki örnekte, bir denetimdeki DataKeys öğelerin ListView veri anahtarı değerlerini belirlemek için özelliğinin nasıl kullanılacağı gösterilmektedir. Ayrıca, dizini kullanan varsayılan davranış yerine bir veri öğesine göre kullanıcı seçiminin nasıl korunduğunu gösterir.

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

Açıklamalar

DataKeyNames Özellik ayarlandığında, denetim denetimdeki ListView her öğe için otomatik olarak bir DataKey nesne oluşturur. DataKey nesnesi, özelliğinde belirtilen DataKeyNames alan veya alanların değerlerini içerir. Ardından DataKey nesneler denetimin DataKeys koleksiyonuna eklenir.

Denetimdeki DataKeys belirli bir veri öğesinin DataKey ListView nesnesini almak için özelliğini kullanın.

Şu anda seçili olan öğenin nesnesini almak DataKey için özelliğini kullanabilirsinizSelectedDataKey. Özelliğini, seçili durumdaki öğenin veri anahtarı değerini doğrudan almak için de kullanabilirsiniz SelectedValue .

Bir komut düğmesine tıklandığı öğenin nesnesini almak DataKey için özelliğini kullanabilirsinizListViewDataItem.DisplayIndex.

Şunlara uygulanır

Ayrıca bkz.