WPF - 如何从 FixedDocument 中删除页面?

WPF - How do I remove page from FixedDocument?

我有一个简单的 class 叫做 "MyPage":

public class MyPage
{
    public TextBlock tbParagraph;
    public FixedPage page;
    public PageContent content;

    public MyPage(string Text)
    {
        tbParagraph = new TextBlock();
        page = new FixedPage();
        content = new PageContent();

        tbParagraph.Text = Text;
        page.Children.Add(tbParagraph);
        content.Child = page;
    }
}

现在我可以创建一个 FixedDocument 并添加 3 个页面,内容分别为 "Page1"、"Page2" 和 "Page3":

FixedDocument document = new FixedDocument();
public List<MyPage> listPages = new List<MyPage>();
listPages.Add(new MyPage("Page 1"));
listPages.Add(new MyPage("Page 2"));
listPages.Add(new MyPage("Page 3"));

foreach(MyPage pg in listPages)
{
    document.Pages.Add(pg.content);
}

现在有办法从 FixedDocument 中删除页面吗?我知道我可以使用 document.Pages[2].Child.Children.Clear(); 清除特定页面内容,但是如何删除页面本身?

documentation 开始,FixedDocument 是一种 display/print 机制,而不是 interactive/editable。

也就是说,您可以通过允许更改 MyPage 中的文本来实现基本编辑 class,然后在更改后根据需要重新构建 FixedDocument。

public class MyPage
{
    public TextBlock tbParagraph;
    public FixedPage page;
    public PageContent content;
    public string Text {get; set;}

    public MyPage(string myText)
    {
       Text = myText;
    }

    public PageContent GetPage()
    {
        tbParagraph = new TextBlock();
        page = new FixedPage();
        content = new PageContent();

        tbParagraph.Text = Text;
        page.Children.Add(tbParagraph);
        content.Child = page;
        return content;
    }
}