代码改变世界

silverlight 打印预览

2013-05-30 17:25  slmk  阅读(891)  评论(0编辑  收藏  举报

Silverlight默认没有提供打印预览功能,我们可以通过ChildWindow实现一个打印预览窗口。在后台打印逻辑中生成Xaml的可视化树,直接输出到预览窗口的Child属性中,即可显示预览了。真正打印时也执行相同的逻辑即可。

Silverlight打印预览

Silverlight作为WPF的子集,不同于传统的Windows Form程序,界面的绘制不是通过GDI+进行的,而是通过XAML描述的可视化对象,统统交由WPF进行绘制处理。这也是微软向我们传递的编程理念:XAML+C#搞定一切。包括后来的metro界面(WPF在触摸方面优化的子集),Windows界面编程所经过的GDI->GDI+->WPF的演变,我们发现界面编程越来越面向对象。

Silverlight打印解决方案2.1正式发布(支持打印预览、页面设置(横向纵向,页边距,纸张大小、字体大小)、自动分页和多页连续打印)