Как программно итерировать строки datagrid?
Я внезапно вернулся к WinForms, после многих лет веб-разработки, и испытываю проблемы с тем, что должно быть простым. У меня есть ArrayList
бизнес-объектов, привязанный к Windows Forms DataGrid
. Я хотел бы, чтобы пользователь мог редактировать ячейки, а после завершения нажимал кнопку Save. В этот момент я хотел бы просмотреть все строки и столбцы в DataGrid
, чтобы найти любые изменения и сохранить их в базе данных. Но я не могу найти способ доступа к строкам DataGrid
.
Я также хочу проверять отдельные ячейки в реальном времени, по мере их редактирования, но я уверен, что это можно сделать. (Может быть, не с ArrayList
в качестве DataSource
?) Но что касается итерации DataGrid
, я очень удивлен, что это не представляется возможным.
Должен ли я действительно запихивать данные моих бизнес-объектов в таблицы данных, чтобы использовать datagrid?
Я не знаю насчет 3.0, но вы можете писать код в VS 2008, который работает на фреймворке .NET 2.0. (Таким образом, вы можете использовать новейший язык C#, но только библиотеки 2.0).
Это дает вам Generics (
List
вместо этих ужасных ArrayLists) и тонну других вещей, и в итоге вы напишете буквально в 3 раза меньше кода.Ага, я действительно просто проверял всех еще раз!:) Реальный ответ, Вы редко должны повторять datagrid. Поскольку, связывая с ArrayList, закрепление - 2 пути. Однако, удобно знать, как к itereate сетка непосредственно, это может спасти несколько линий кодекса время от времени.
Но NotMyself и Orion дали лучшие ответы: Убедите заинтересованные стороны двигаться до более высокой версии C#, сокращать затраты развития и ремонтопригодность увеличения и расширяемость.