ListView.DataKeys Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
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 объекта для элемента, для которого была нажата кнопка команды.