Приложение Winform содержит одну форму с элементом управления reportViewer. Когда форма инициализируется, отчет создается, но когда я пытаюсь программно запустить PrintDialog в средстве просмотра отчетов, я получаю сообщение об ошибке «Операции недействительны из-за текущего состояния объекта».
Когда я комментирую строку PrintDialog, форма отчета отображается нормально. Я думаю, что проблема заключается в задержке, поскольку она генерирует форму/отчет. Есть ли способ дождаться загрузки формы перед запуском PrintDialog?
Выдержка из кода:
this.reportViewer1.RefreshReport(); this.reportViewer1.PrintDialog();
ОБНОВИТЬ
Решение (как предложено):
private void form_load(...)
{
createReport;
this.reportViewer1.RefreshReport();
}
private void reportViewer1_RenderingComplete(...)
{
this.reportViewer1.PrintDialog();
}