Я пытаюсь понять разницу между следующими 2 примерами.
Во-первых, именно так я сейчас назначаю данные для элемента управления в моем приложении WinForm.
lkuCounty.Properties.DataSource = Person.CountyList();
lkuCounty.Properties.PopulateColumns();
lkuCounty.Properties.DisplayMember = "CountyName";
lkuCounty.Properties.ValueMember = "CountyID";
lkuCounty.Properties.Columns[0].Visible = false;
lkuCounty.Properties.Columns[2].Visible = false;
lkuCounty.Properties.Columns[3].Visible = false;
Кажется, это работает, хотя я признаю, что, если он немного выключен, у меня, вероятно, не хватает опыта, чтобы просто сказать код. Также следует отметить, что Person.CountyList()
фактически возвращает DataTable
: \
Теперь, как все примеры , похоже, говорят, что я должен это сделать.
memberBindingSource.DataSource = Person.CountyList();
lkuCounty.Properties.DataSource = memberBindingSource;
lkuCounty.Properties.PopulateColumns();
lkuCounty.Properties.DisplayMember = "CountyName";
lkuCounty.Properties.ValueMember = "CountyID";
lkuCounty.Properties.Columns[0].Visible = false;
lkuCounty.Properties.Columns[2].Visible = false;
lkuCounty.Properties.Columns[3].Visible = false;
Есть ли польза от использования BindingSource? Есть ли минус в том, чтобы делать это ДРУГИМ ПУТЬ?
Для контекста это приложение WinForm CRUD в C #, использующее SQL 2005.