2015-08-10 1 views
0

У меня есть MDI winform с верхней панелью, отображающей изображение и меню навигации, заполненное из базы данных слева. Я хотел показать дочернюю форму по умолчанию сразу после отображения формы MDI. Я использовал DevExpress WaitForm перед отображением всего. Однако верхняя панель остается пустой, пока не будет полностью отображена дочерняя форма. Что можно сделать, чтобы отобразить дочернюю форму после отображения каждого компонента MDI. Я пробовал темы, но не понял, как правильно это сделать. Ваша помощь высоко ценится.Отображение дочерней формы сразу после формы MDI полностью отображается

Благодаря

+0

Что форма ребенок делает, что он блокирует картину формы MDI? – MickyD

+0

Детальная форма содержит элемент управления xtraReport, который генерирует отчеты из базы данных. – aby

+0

Используйте заставку, чтобы скрыть уродливые артефакты инициализации. –

ответ

0

Ребенок форма содержит элемент управления xtraReport, который генерирует отчеты из базы данных

звучит как форма ребенок блокирует основное окно с выборки данных базы данных и генерации отчетов.

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

Для заправки можно использовать:

  • Явное Thread (не рекомендуется)
  • Task хотя вам может понадобиться поточно-маршалом на свой UI нить
  • An async метод, который вы можете await (рекомендуемые). Это делает его гораздо проще, чтобы сделать работу в другом потоке, то автоматически маршал результатов в ваш UI поток, в котором вы можете обновить xtraReport