Зачем вам иметь несколько привязок данных к элементу управления WinForms?

#c# #winforms #data-bindin&

#c# #winforms #привязка данных

Вопрос:

Я пытаюсь научиться использовать привязку данных WinForms, но меня смущает одна вещь: почему вы «добавляете» привязку данных, а не «устанавливаете» привязку данных? Для примера рассмотрим следующий код.

TextBox1.DataBindin&s.Add("Text", ds,"Customers.CustomerID")

Насколько я понимаю, эта строка добавляет привязку данных к, TextBox1 которая привязывает его Text свойство к CustomerID полям в Customers таблице ds DataSet .

Тем не менее, для меня термин «Добавить» подразумевает, что вы можете добавить несколько элементов чего-либо. Что меня смущает в этом примере. Зачем вам привязывать текстовое поле к нескольким объектам? Как это вообще возможно? Может ли кто-нибудь привести пример, когда несколько привязок имеют смысл?

Ответ №1:

Вы также можете привязать другие поля, например, Enabled .

 TextBox1.DataBindin&s.Add("Enabled", myPresentationModel, "IsTextBox1Enabled");
  

Комментарии:

1. О, чувак, теперь это так очевидно, спасибо. Итак, что произойдет, если я дважды свяжусь с одним и тем же свойством? Например, TextBox1.DataBindin&s.Add(«Текст», ds, «Клиенты. CustomerID»); а затем TextBox1.DataBindin&s.Add(«Текст», ds, «Клиенты. CustomerName»). Заменяет ли вторая привязка к свойству Text первую?

2. С самого начала я почти уверен, что это выдает исключение типа «дублирующаяся привязка не может быть добавлена». (Редактировать: Ах, вот так. msdn.microsoft.com/en-us/library/b6y3aby2 (v = VS.100).aspx — «Имя свойства уже привязано к данным».)