Num*_*er8 7 silverlight silverlight-4.0
我们的应用程序在画布上有许多对象; 画布包含在滚动查看器中.我们还有一个滑块控件和一些按钮,总是位于窗口顶部的中心.
我试图通过捕获应用程序的位图来打印应用程序,但没有任何"装饰" - 滑块,按钮或滚动条.
_scrollViewer.HorizontalScrollBarVisibility = ScrollBarVisibility.Hidden;
_scrollViewer.VerticalScrollBarVisibility = ScrollBarVisibility.Hidden;
var s = xSlider;
s.Visibility = Visibility.Collapsed;
var b = xPlusButton;
b.Visibility = Visibility.Collapsed;
b = xMinusButton;
b.Visibility = Visibility.Collapsed;
b = xButton;
b.Visibility = Visibility.Collapsed;
Run Code Online (Sandbox Code Playgroud)
正如预期的那样,滑块和按钮是隐藏的,但滚动条不是.
我怀疑应用程序需要重新绘制布局才能隐藏滚动条.有没有办法让这种情况发生?由于SL 4中的打印操作必须由UI手势启动,因此这变得更加复杂.没有办法(AFAIK)以编程方式启动,因此这个重绘必须在其中一个PrintDocument事件处理程序中进行.
谢谢你的任何建议......
试试以下,
canvas.InvalidateMeasure();
canvas.InvalidateArrange();
Run Code Online (Sandbox Code Playgroud)
您也可以使用WritableBitmap捕获运行时映像并将图像发送到打印文档(如果打印文档忽略渲染变换).
此外,如果您使用WritableBitmap捕获元素,那么您应该将RenderTransform作为第二个参数.你可以将代码发布到捕获屏幕吗?
| 归档时间: |
|
| 查看次数: |
3204 次 |
| 最近记录: |