|
WPF печать Visual , без вызова ShowDialog. Не получается написать правильный код.
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
Народ, вот этот, код, для печати без вызова окна диалога печати. Только вот есть ньанс, который не позволяет использовать этот код без вызова ShowDialog . Ньанс такой: visual в переменной U это обычный usercontrol. Canvas в нем сидит с графикой всякой разной. Этот U изменяется кодом:подставнока графики. На экране видим отображение этих изменений. Потом идет отправка на печать через процедуру PrintListNoDialog. И я получаю на печати предыдущее состояние этого U, а не то, что вижу сейчас. Если включить использование ShowDialog, то все будет в порядке, на печать уйдет , то что я вижу. Как заставить, печатать без ShowDialog текущее состояние U контрола? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2011, 11:55 |
|
WPF печать Visual , без вызова ShowDialog. Не получается написать правильный код.
|
|||
---|---|---|---|
#18+
AlexeiK, что если ваш контрол отрендерить как Bitmap и после отправить на печать? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2011, 13:34 |
|
WPF печать Visual , без вызова ShowDialog. Не получается написать правильный код.
|
|||
---|---|---|---|
#18+
уТКа, О спасибо за наводку. Нашел темку тут . Там есть такая штучка авторFlushing the Dispatcher queue down to DispatcherPriority.Render Just use Dispatcher.Invoke: Dispatcher.Invoke(DispatcherPriority.Loaded, new Action(() => {})); This causes an empty action to be invoked after all Render and higher priority actions have completed. The Dispatcher.Invoke method processes the dispatcher queue until it is empty down to Loaded level (which is right below Render). The reason this is necessary is that many WPF UI components use the Dispatcher queue to delay processing until the control is ready to render. This significantly cuts down on unnecessary re-computation of visual properties during binding and other operations. я сделал это, перед печатью, и все стало как ожидалось. печать идет, того, что видим. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2011, 14:24 |
|
WPF печать Visual , без вызова ShowDialog. Не получается написать правильный код.
|
|||
---|---|---|---|
#18+
но на большой скорости печати, это не помогает. пришлось заюзать RenderTargetBitmap ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2011, 17:30 |
|
WPF печать Visual , без вызова ShowDialog. Не получается написать правильный код.
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7.
вот последовательность. после нее prnd.printvisual(u,"test") ... |
|||
:
Нравится:
Не нравится:
|
|||
01.12.2011, 18:38 |
|
WPF печать Visual , без вызова ShowDialog. Не получается написать правильный код.
|
|||
---|---|---|---|
#18+
чето опять не получается. никто еще не столкнулся с этим? напомню: у меня usercontrol с полями и т.д. кодом я назначаю ему данные. потом кодом отправляю на печать, через printvisual. и на печать, получаю только первый образец на всех бумажках. то есть wpf не отрисовывает смену данных и в принтер всегда уходит одна и таже картинка. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.01.2012, 16:54 |
|
|
start [/forum/topic.php?fid=21&gotonew=1&tid=1441975]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
11ms |
get first new msg: |
8ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 304ms |
total: | 442ms |
0 / 0 |