BindingSource.DataSource Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает источник данных, к которому привязан соединитель.
public:
property System::Object ^ DataSource { System::Object ^ get(); void set(System::Object ^ value); };
public object DataSource { get; set; }
public object? DataSource { get; set; }
member this.DataSource : obj with get, set
Public Property DataSource As Object
Значение свойства
Объект Object, выступающий в качестве источника данных. Значение по умолчанию — null
.
Примеры
В следующем примере кода назначается DataSource список клиентов компоненту BindingSource . Этот пример кода является частью более крупного примера, приведенного в разделе Практическое руководство. Создание уведомлений об изменениях с помощью метода BindingSource ResetItem.
void Form1_Load( Object^ /*sender*/, EventArgs^ /*e*/ )
{
// Create and populate the list of DemoCustomer objects
// which will supply data to the DataGridView.
List< DemoCustomer^ >^ customerList = gcnew List< DemoCustomer^ >;
customerList->Add( DemoCustomer::CreateNewCustomer() );
customerList->Add( DemoCustomer::CreateNewCustomer() );
customerList->Add( DemoCustomer::CreateNewCustomer() );
// Bind the list to the BindingSource.
this->customersBindingSource->DataSource = customerList;
// Attach the BindingSource to the DataGridView.
this->customersDataGridView->DataSource =
this->customersBindingSource;
}
private void Form1_Load(System.Object sender, System.EventArgs e)
{
// Create and populate the list of DemoCustomer objects
// which will supply data to the DataGridView.
List<DemoCustomer> customerList = new List<DemoCustomer>();
customerList.Add(DemoCustomer.CreateNewCustomer());
customerList.Add(DemoCustomer.CreateNewCustomer());
customerList.Add(DemoCustomer.CreateNewCustomer());
// Bind the list to the BindingSource.
this.customersBindingSource.DataSource = customerList;
// Attach the BindingSource to the DataGridView.
this.customersDataGridView.DataSource =
this.customersBindingSource;
}
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Me.Load
' Create and populate the list of DemoCustomer objects
' which will supply data to the DataGridView.
Dim customerList As List(Of DemoCustomer) = _
New List(Of DemoCustomer)
customerList.Add(DemoCustomer.CreateNewCustomer())
customerList.Add(DemoCustomer.CreateNewCustomer())
customerList.Add(DemoCustomer.CreateNewCustomer())
' Bind the list to the BindingSource.
Me.customersBindingSource.DataSource = customerList
' Attach the BindingSource to the DataGridView.
Me.customersDataGridView.DataSource = Me.customersBindingSource
End Sub
Комментарии
Свойству DataSource можно задать ряд источников данных, включая типы, объекты и списки типов. Результирующий источник данных будет предоставлен в виде списка. В следующей таблице показаны некоторые распространенные источники данных и результирующая оценка списка.
Свойство DataSource | Вывод списка результатов |
---|---|
null |
IBindingList Пустой объект из объектов . Добавление элемента задает для списка тип добавленного элемента. |
null с набором DataMember |
Не поддерживается, вызывает ArgumentException. |
Тип, не относясь к списку, или объект типа "T" | Пусто IBindingList с типом "T". |
Экземпляр массива | IBindingList содержит элементы массива. |
Экземпляр IEnumerable | Объект , IBindingListIEnumerable содержащий элементы . |
Экземпляр списка, содержащий тип "T" | IBindingList экземпляр, содержащий тип "T". |
Кроме того, можно задать для других типов списков, DataSource таких как IListSource и ITypedList , и BindingSource будет обрабатывать их соответствующим образом. В этом случае тип, содержащийся в списке, должен иметь конструктор без параметров.
Если при настройке источника данных указанная ссылка содержит несколько списков или таблиц, необходимо задать DataMember для свойства строку, задающую список, к которому необходимо выполнить привязку. Задание этого свойства вызывает DataSourceChanged событие .
Примечание
Если вы вносите какие-либо изменения в DataSource значение свойства, это следует сделать в потоке пользовательского интерфейса, чтобы убедиться, что пользовательский интерфейс отражает изменения.
Свойство DataSource является свойством по умолчанию для BindingSource класса .