2012-02-19 3 views
0

Я использую привязки данных в моем проекте WinForms, но установка DataSource свойства занимает всего несколько минут:Почему привязка данных настолько медленная?

eventBindingSource.DataSource = _event; 

Я попытался установить SuspendBinding() и ResumeBinding() методы, но это не делает обязательные быстрее.

Есть ли у вас идеи ускорить привязку данных?

Также, когда я редактирую элемент управления, он идет очень медленно.

Я использую Winforms, C# и Entity Framework, а _event - класс POCO, содержащий около 20 объектов.

+0

Если вы предварительно настроили источник данных в дизайнере, так как ожидаемый тип ускоряет работу? Таким образом, вы получите лучшую поддержку привязки к дизайну, если хотите ... – Reddog

+0

@Reddog Что вы подразумеваете под «предварительным заданием источника данных в дизайнере»? В конструкторе я создал источник данных и привязал свойства к элементам управления. – Martijn

+0

Является ли _event в памяти или ленивым загруженным из базы данных при первом доступе? –

ответ

1

Я предлагаю вам установить профайлер (есть бесплатные) и узнать, что именно занимает время. Это предотвратит любые догадки, и вы узнаете многое о том, что происходит под обложками.

  • Paid: Муравьи и dotTradre
  • Free: Equatec и SciTech

VS 2010 поставляется с одним тоже, если у вас есть достаточно высокое издание (не помню какой).

Все связанно с данного answer

+0

Можете ли вы предложить хороший профайлер? – Martijn

+0

Обновленный ответ с несколькими –

0

Turn все авто проклейкой DataGridView первых, а затем установить DataSource свойства, и настроить автоматическую проклейку предпочтение обратно. Это действительно повышает мощность DataGridView.

Смежные вопросы