creizlein Ответов: 0

Лучший способ хранения объекта в элементе datarow


У меня есть DataGridView, который может переключать свои отображаемые значения из 2 разных таблиц данных, информация внутри очень проста, это фиксированная таблица 20rows x 20cols.

Каждая ячейка должна содержать объект, поэтому, когда я выбираю ячейку, Я могу отображать ее расширенные свойства, такие как MaxValue, MinValue, TotalValues и т. д. (а не только среднее значение, которое отображается в самой ячейке)

Я могу легко сделать это, сохранив объект в свойстве TAG каждой ячейки в DataGrid, но проблема, с которой я сталкиваюсь, заключается в том, что когда я изменяю источник данных моего DataGridView, вся эта информация не сохраняется в базовом dataTable.

Каков был бы наилучший подход к решению этой проблемы?

Ищете лучшие рекомендации

В качестве ссылки объект, подлежащий хранению, является пользовательским объектом и может реализовывать или иметь любое количество свойств/атрибутов по мере необходимости
Я также должен уточнить, что для каждой ячейки требуется 1 другой объект, а не 1 объект по строке

Что я уже пробовал:

Я считаю, что мог бы использовать 2 разных элемента управления datagridView и переключаться между ними, но это кажется глупым, так как теперь есть 2 таблицы данных, но их может быть больше.

Я также думал о хранении объектов во внешнем arraylist (rowIndex/colIndex), а затем просто искать объект, когда это необходимо, но опять же мне понадобятся N-массивы для каждого datatable, и это звучит не совсем правильно?

Maciej Los

Мне очень жаль, но хранение объектов в каждой отдельной ячейке внутри объекта datatable звучит ужасно.
Вместо этого вы должны использовать Объектом bindingsource[^].
Для получения более подробной информации, пожалуйста, смотрите: Как привязать объекты к элементам управления Windows Forms DataGridView | Microsoft Docs[^]
Но я могу ошибаться...

creizlein

спасибо за подсказку! я это проверю
В любом случае мне все еще нужно найти место для хранения объектов, поэтому подход использования arraylist для хранения объектов и перекрестной ссылки на них с ячейкой x/y примерно такой же, как привязка данных

0 Ответов