共用方式為


ListView.DataKeys 屬性

定義

取得 DataKey 物件的集合,這些物件表示 ListView 控制項中每一個項目的資料索引鍵值。

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

屬性值

物件,包含 ListView 控制項中每一個項目的資料索引鍵。

屬性

範例

下列範例示範如何使用 DataKeys 屬性來判斷 控件中 ListView 項目的數據索引鍵值。 它也會示範如何根據數據項保留使用者選取專案,而不是使用索引的默認行為。

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

備註

DataKeyNames設定 屬性時,ListView控件會自動為控件中的每個專案建立 DataKey 物件。 DataKey物件包含 屬性中指定的DataKeyNames欄位或欄位值。 然後,物件 DataKey 會新增至控件的 DataKeys 集合。

DataKeys使用 屬性來擷取 DataKey 控制項中特定資料項的物件ListView

您可以使用 SelectedDataKey 屬性來擷取 DataKey 目前選取項目的物件。 您也可以使用 SelectedValue 屬性,直接擷取目前選取項目的數據索引鍵值。

您可以使用 ListViewDataItem.DisplayIndex 屬性來擷取 DataKey 按下命令按鈕之項目的物件。

適用於

另請參閱