我正在尝试基于此示例为 MigraDoc 创建一个库,该库支持不同类型的文档。我的想法是创建一个基类,并带有一个虚方法CreatePage()(负责页面布局的方法)。但是,概念是CreatePage()应该从CreateDocument()用户调用的方法调用。唉,可以覆盖CreatePage(),但它并不意味着直接调用。它看起来像这样:
public class DocumentWriter
{
private Document document;
public virtual void CreateDocument(IDocumentArgs args)
{
document = new Document();
DefineStyles();
CreatePage();
FillContent(args);
}
public virtual void CreatePage()
{
// Create page layout here
}
// Remaining code skipped for readability...
}
但是如果创建继承的类,它会覆盖CreatePage(),那么将从中调用哪个方法CreateDocument()?
原始虚拟(非覆盖)方法
覆盖的方法 CreatePage()
慕姐4208626
相关分类