2010-10-27 4 views
0

При привязке к datatables в visual studio он устанавливает источник данных источника привязки к выбранному datatable - это прекрасно и это то, что ожидается. Однако источник данных фактически указывает на данные этого типа данных.Databinding в .NET - Datatables, Dataviews and BindingSources

В настоящее время я реализую пользовательские базовые классы бизнес-объектов, которые включают классы коллекций. Я направляюсь к ощущению, что какое-то представление было бы удобно, поскольку я получаю странное поведение, когда эти коллекции сортируются, например, изменения позиции случайного элемента, когда bindingsource.position устанавливается на последний элемент коллекции.

Мне просто интересно, как Microsoft собирается получить привязку связывания к привязке к dataview, а не к datatable, если в дизайнере нет экземпляра dataview.

Marlon

ответ

0

Все DataTables имеют вид по умолчанию, который используется в BindingSource. Дополнительную информацию см. В разделе DefaultView.

+0

Есть ли у datagridviews и bindingsources MS внутренняя проверка, чтобы узнать, имеет ли их источник данных тип DataTable? Затем использует представление по умолчанию - я думал, что привязывающие ресурсы должны быть агностическими для их источника? – Marlon

+1

'BindingSource' использует интерфейс' 'IListSource'', если он реализован источником данных. 'DataTable' реализует этот интерфейс, возвращая его' DefaultView' из метода GetList. Поэтому «BindingSource» не должен знать, что такое DataTable или DataView, он просто использует интерфейс. –

Смежные вопросы