Поделиться через


BindingSource.List Свойство

Определение

Возвращает список, к которому привязан соединитель.

public:
 property System::Collections::IList ^ List { System::Collections::IList ^ get(); };
[System.ComponentModel.Browsable(false)]
public System.Collections.IList List { get; }
[<System.ComponentModel.Browsable(false)>]
member this.List : System.Collections.IList
Public ReadOnly Property List As IList

Значение свойства

Объект IList, который представляет список, или значение null, если с этим объектом BindingSource не связан базовый список.

Атрибуты

Примеры

В следующем примере кода показаны члены List, RemoveAtи Count . Чтобы запустить этот пример, вставьте код в форму с BindingSource именем BindingSource1, две метки с именем label1 и label2и кнопку с именем button1. Свяжите button1_Click метод с событием Click для button1. Пользователям Visual Basic потребуется добавить ссылку на System.Data.dll.

private void button1_Click(object sender, EventArgs e)
{
    // Create the connection string, data adapter and data table.
    SqlConnection connectionString =
         new SqlConnection("Initial Catalog=Northwind;" +
         "Data Source=localhost;Integrated Security=SSPI;");
    SqlDataAdapter customersTableAdapter =
        new SqlDataAdapter("Select * from Customers", connectionString);
    DataTable customerTable = new DataTable();

    // Fill the adapter with the contents of the customer table.
    customersTableAdapter.Fill(customerTable);

    // Set data source for BindingSource1.
    BindingSource1.DataSource = customerTable;

    // Set the label text to the number of items in the collection before
    // an item is removed.
    label1.Text = "Starting count: " + BindingSource1.Count.ToString();

    // Access the List property and remove an item.
    BindingSource1.List.RemoveAt(4);

    // Remove an item directly from the BindingSource. 
    // This is equivalent to the previous line of code.
    BindingSource1.RemoveAt(4);

    // Show the new count.
    label2.Text = "Count after removal: " + BindingSource1.Count.ToString();
}
    Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) _
        Handles button1.Click

        ' Create the connection string, data adapter and data table.
        Dim connectionString As New SqlConnection("Initial Catalog=Northwind;" & _
            "Data Source=localhost;Integrated Security=SSPI;")
        Dim customersTableAdapter As New SqlDataAdapter("Select * from Customers", _
            connectionString)
        Dim customerTable As New DataTable()

        ' Fill the adapter with the contents of the customer table.
        customersTableAdapter.Fill(customerTable)

        ' Set data source for BindingSource1.
        BindingSource1.DataSource = customerTable

        ' Set the label text to the number of items in the collection before
        ' an item is removed.
        label1.Text = "Starting count: " + BindingSource1.Count.ToString()

        ' Access the List property and remove an item.
        BindingSource1.List.RemoveAt(4)

        ' Remove an item directly from the BindingSource. 
        ' This is equivalent to the previous line of code.
        BindingSource1.RemoveAt(4)

        ' Show the new count.
        label2.Text = "Count after removal: " + BindingSource1.Count.ToString()

    End Sub
End Class

Комментарии

Класс BindingSource равномерно обрабатывает различные источники данных. В идеале свойству List следует присвоить общее IListзначение . Однако иногда может потребоваться привести это свойство к более конкретному типу. В следующей таблице показан базовый тип списка, который зависит от типа или значения источника данных.

Тип источника данных Описание базового списка
DataSource и DataMember являются null Пустая коллекция типа ArrayList.
DataSource имеет значение null, но DataMember не является null Ни один; попытка получить List вызовет ArgumentExceptionисключение .
Экземпляр Array Объект Array.
Экземпляр IListSource Возвращаемое значение из вызова GetList метода данного IListSource экземпляра.
Экземпляр IBindingList Объект IBindingList.
Экземпляр IList Объект IList.
Экземпляр, отличныйIList от типа "T" Объект BindingList<T> с одним элементом.
Экземпляр ICustomTypeDescriptor Объект ArrayList с одним элементом.
Объект IEnumerable Объект ArrayList с скопированными элементами.
Тип Array с DataMember типом элемента "T" Объект BindingList<T>.
Объект Type , представляющий IListSource или ITypedList Экземпляр, созданный вызовом CreateInstance(Type) метода Activator класса . Может NotSupportedException быть вызвано исключение .
Тип IList с DataMember типом элемента "T"

-или-

Тип, отличный отIList
Объект BindingList<T>.
Тип ICustomTypeDescriptor. Ни один; попытка получить List вызовет NotSupportedExceptionисключение .

Если извлеченным типом IList является интерфейс, базовая коллекция может быть более сложной ArrayList , например класс или DataView .

Применяется к

См. также раздел