我想你会发现这本在线书非常有用: http://msdn.microsoft.com/en-us/library/aa245244(v=office.10).aspx
你是对的 - Masters系列是ReadOnly。文档通常以空主集合开始。通过从模板文档中删除主人来填充该集合。
如果要使用预先填充的Masters集合创建新文档,则可以创建自己的模板(.vst),然后将新文档基于该文档。例如:
Visio.Document vDoc = vDocs.Add("MyTemplateFile.vst");
通常,您将模板和模板打包在一起,然后始终通过从相应的模板文档(.vss)中删除主模板来创建形状。
Masters还有一个MatchByName属性。当此属性设置为true时,删除主服务器,Visio首先检查工程文档主服务器集合中是否存在相同的主服务器。如果它确实会丢弃该主服务器的实例。如果不是,将根据原始模板添加新的主模板。有关更多信息,请查看这两个链接:
如果您真的想在代码中创建自己的母版,可以在页面上绘制/删除自己的形状,然后使用Document.Drop方法将其添加到母版集合中。
此外,如果您想按名称使用master,那么在使用它之前,您需要遍历masters集合以检查它是否存在。