Silverlight中的页面方向

问题描述:

我想用PrintDocument在Silverlight 4中打印文档。但我想使用纸张的横向方向。我用这样的代码:Silverlight中的页面方向

public Run() 
{ 
    var pd = new PrintDocument(); 
    pd.PrintPage += new EventHandler<PrintPageEventArgs>(pd_PrintPage); 
    pd.Print(); 
} 

void pd_PrintPage(object sender, PrintPageEventArgs e) 
{ 
    e.PageVisual = myPaper; 
} 

我们可以使用修正页打印PrintPageEventArgs。但是我们不能PrintPageEventArgs.PrintableArea(PrintableArea总是使用纵向方向)。我能用它做什么?

我们有同样的问题,并决定silverlight无法访问打印机对话框(因为它是沙箱),所以我们记录了此功能,并让我们的用户在打印机对话框和应用程序内设置方向。这样,打印输出是正确的,但这真的很难看。 如果有人知道更好的解决方案,我将不胜感激!