Добавить несколько окон WPF как страницу в один документ - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь напечатать несколько листов с отметками.Я создал окно WPF и распечатал все окно следующим образом:

PrintDialog pd = new System.Windows.Controls.PrintDialog();
if (pd.ShowDialog() == true)
{
    pd.PrintVisual(this.Content as Visual, "Report");
}

Затем я хочу добавить еще один лист оценки в документ: вставьте оценки каждого студента в это окно, добавьте его на страницу.А затем распечатайте один файл следующим образом:

PrintDialog pd = new System.Windows.Controls.PrintDialog();

FixedDocument document = new FixedDocument();
document.DocumentPaginator.PageSize = new System.Windows.Size(pd.PrintableAreaWidth, pd.PrintableAreaHeight);

FixedPage page1 = new FixedPage();
page1.Width = document.DocumentPaginator.PageSize.Width;
page1.Height = document.DocumentPaginator.PageSize.Height;
page1.Children.Add(this);

PageContent page1Content = new PageContent();
((IAddChild)page1Content).AddChild(page1);
document.Pages.Add(page1Content);

FixedPage page2 = new FixedPage();
page2.Width = document.DocumentPaginator.PageSize.Width;
page2.Height = document.DocumentPaginator.PageSize.Height;
page2.Children.Add(this);

PageContent page2Content = new PageContent();
((IAddChild)page2Content).AddChild(page2);
document.Pages.Add(page2Content);

if (pd.ShowDialog() == true)
{
    pd.PrintDocument(document.DocumentPaginator, "My first document");
}

Но проблема в том, что я добавляю Window (this) на страницы как элемент:

page1.Children.Add(this);

У меня ошибка Window must be the root of the tree.Cannot add Window as a child of Visual. Source=< Cannot evaluate the exception source>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...