2011-08-16 3 views
0

Мне было интересно, как лучше всего распечатать весь контент прокручиваемого элемента управления. Я пытался напечатать элемент управления несколькими способами, но все время я мог только нарисовать видимый контент управления. До сих пор я пытался использоватьКак распечатать содержимое прокручиваемого элемента управления

PrintForm // there is nothing I can do with this because it requires a form not a control 

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

+0

Это не сработает. Используйте PrintDocument. –

+0

@HansPassant Как PrintDocument поможет? Я должен каким-то образом передать содержимое элемента управления для печати. ​​Я использовал этот компонент до того, как я не был способный передать печатный контент управления entiere. – printerGeorge

+0

Ну, что находится под контролем? Попробуйте лучше документировать свой вопрос. –

ответ

0

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

+0

Я пробовал это решение, однако добавление элемента управления в форму (невидимое для пользователя) требует удаления этого контроль от текущая форма (форма видимая для пользователя). Таким образом, пользователь, вероятно, увидит какое-то мерцание или что-то подобное во время печати или подготовки к печати. ​​ – printerGeorge

+0

Создайте новый экземпляр той же формы и заполните его данными. В этом случае, когда вам нужно распечатать форму, не будет мерцания. – platon

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