Я создаю простое приложение на C #, которое позволяет пользователю редактировать строки таблицы в базе данных.Интерфейс очень прост, это в основном список строк и несколько кнопок.При выборе строки и нажатии кнопки «Добавить» появляется новая форма с текстовыми полями для каждого столбца.Я хочу, чтобы эти столбцы заполнялись значениями для выбранной строки.
Прочитав несколько статей, я обнаружил, что, вероятно, самый простой способ сделать это - привязать свойство Text TextBox к DataSource.Поэтому я храню значения из базы данных в объекте DataTable с планом получения выбранного DataRow и привязки его к TextBox.Я использую эту строку:
productNameTextBox.DataBindings.Add(new Binding("Text", productRow, "Name"));
Результатом является следующее исключение:
Первое исключение типа «System.ArgumentException» произошло в System.Windows.Forms.dll Не удается привязать к имени свойства или столбца в источнике данных.Имя параметра: dataMember
И да, столбец «Имя» существует.
После прочтения по документации привязок (http://msdn.microsoft.com/en-us/library/4wkkxwcz(v=VS.80).aspx) и многих примеров, мне кажетсячто необходимо связать с DataTable, в котором содержится строка. У меня работал следующий код:
productNameTextBox.DataBindings.Add(new Binding("Text", productRow.Table, "Name"));
За исключением того, что он всегда устанавливает значение TextBox в первой строке. Как мне указать, какойстрока для использования?