DataGridView и DataTable
Разумеется, DataGridView содержит не все колонки из таблицы, а только те, которые реально подлежат восприятию пользователем. А там еще есть всякие PK и FK.
Как это сделать? Единственное решение, которое мне сейчас приходит в голову, это сделать в DataGridView невидимую колонку "Id", которая будет хранить значение PK для строк. Вытаскивать ее значение и по нему находить в DataTable полную строку. Но это наверное неправильно, есть более красивый способ?
Таким образом получаем ссылку на один из обехктов источника данных, в данном случае DataRow. А в нем в любом случае нужно уложить данные первичного ключа. (сделать эту колонку скрытой, лёгко настраивается в дизайнере)
Там правда возвращается не DataRow, а DataRowView, но это мелочь. ;)
Забылся немного :-) Довольно редко (практически никогда) не использую в качестве источника данных, предпочитаю собственные бизнесс-объекты с нужным набором методов и т.д...