0

ビジュアルを複数ページのxpsに印刷しようとしています。最初のページは機能していますが、他のページは空白のままです。

Dim xP As Integer = 0
Dim yP As Integer = 0
xP = Math.Ceiling(WorkFlowCanvas.Width / pageWidth)
yP = Math.Ceiling(WorkFlowCanvas.Height / pageHeight)
Dim collator = writer.CreateVisualsCollator()
collator.BeginBatchWrite()
For y = 1 To yP
    For x = 1 To xP
        Dim o As New Canvas
        o = New CanvasCreator().GenerateCanvas()
        Dim sv As New ScrollViewer
        sv.Height = 1200
        sv.Width = 800
        sv.Content = o
        sv.ScrollToHorizontalOffset(x - 1 * sv.Width)
        sv.ScrollToVerticalOffset(y - 1 * sv.Height)
        sv.HorizontalScrollBarVisibility = ScrollBarVisibility.Disabled
        sv.VerticalScrollBarVisibility = ScrollBarVisibility.Disabled
        collator.Write(sv)
    Next
Next
collator.Write(Me)
collator.EndBatchWrite()

xamlでビジュアルを作成して印刷すると、scrollviewerはコンテンツを書き込む前に常にコンテンツを上にスクロールすることに気付きました(スクロールバーは移動しません)。スクロールビューアを「フリーズ」する方法はありますか?

4

1 に答える 1

0

この解決策はハッキーですが、私にとってはうまくいくようです。

            sv.IsEnabled = False
            collator.Write(sv)
            sv.IsEnabled = True

私がこれをしなければならない理由を知っているなら、あなたは答えることができます。

于 2012-06-12T13:09:27.477 に答える