Список структуры как источник данных DataGrid VB2010 Express - PullRequest
0 голосов
/ 17 февраля 2012

Я впервые правильно играю с DataGridView, и у меня возникло небольшое затруднение ... Мне нужно отобразить данные в DataGridView для удобства просмотра, и у меня есть список всех данных.Это список ( структура ), и я понятия не имею, как это сделать.Я могу установить источник данных в качестве списка, но это не работает.Я прочитал эту тему, но на самом деле не понимаю.В этом случае я вынужден использовать классы, а не структуры?

Другая проблема заключается в том, что данные в списке не все нужны ... Сначала мне нужно отсортировать список, а потом только помещать в него данные.это необходимо.

Будет ли лучше вручную заполнить сетку, чем использовать источник в этом случае?

Спасибо.

1 Ответ

0 голосов
/ 23 февраля 2012

Использование структуры в качестве источника данных почти наверняка является очень плохой идеей, потому что вы сделаете несколько глубоких копий объекта в вашем источнике данных в процессе привязки к объекту презентации. Это имеет ужасные последствия для производительности. Переход от структуры к классу также, вероятно, облегчит определение того, что вы делаете неправильно с вашим источником данных, но вот несколько вещей, которые нужно попробовать:

  • Попробуйте использовать объект BindingSource (чтобы помочь сопоставить свойства вашего фактического объекта со столбцами, которые должен отображать DataGridView
  • Попробуйте установить для свойства AutoGenerateColumns значение True или, в качестве альтернативы:
  • Убедитесь, что у вас есть коллекция столбцов, которые точно соответствуют именам свойств объекта в вашем списке
  • Убедитесь, что тип объекта в вашем списке имеет хорошую перегрузку для функции .ToString ()
  • Убедитесь, что тип любых свойств типа объекта в вашем списке имеет хорошие перегрузки для функции .ToString ().
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...