C# Visio-如何在运行时从模具中隐藏主控形状

C# Visio-如何在运行时从模具中隐藏主控形状,c#,office-addins,visio,master,stencils,C#,Office Addins,Visio,Master,Stencils,是否有在运行时从模具隐藏特定母版的选项? 我试过mstr.Hidden=1和我得到以下异常:{“\n\n请求的操作当前已禁用。”}。这取决于要隐藏主控形状的模具。如果未打开以进行编辑,则无法设置隐藏属性并隐藏主控形状 Microsoft随Visio提供的模板是超级复制器只读。您甚至不能右键单击然后选中编辑模具属性。它是禁用的 但是,如果该模具是您自己的模具,或者是您当前正在处理的文档的文档模具,则可以显示和隐藏母版 让我们使用VBA即时窗口并进行一些调查。我打开了标准基本流程图模板。它将打开带有

是否有在运行时从模具隐藏特定母版的选项?
我试过
mstr.Hidden=1和我得到以下异常:
{“\n\n请求的操作当前已禁用。”}。

这取决于要隐藏主控形状的模具。如果未打开以进行编辑,则无法设置隐藏属性并隐藏主控形状

Microsoft随Visio提供的模板是超级复制器只读。您甚至不能右键单击然后选中编辑模具属性。它是禁用的

但是,如果该模具是您自己的模具,或者是您当前正在处理的文档的文档模具,则可以显示和隐藏母版

让我们使用VBA即时窗口并进行一些调查。我打开了标准基本流程图模板。它将打开带有图形的两个模具。我们可以看到他们的名字如下:

?Visio.Documents(1).Name
'--> Drawing1

?Visio.Documents(2).Name
'--> BASFLO_U.vssx
模板BASFLO_.vssx(基本流程图形状)是#2文档。它有一个名为“数据库”的主机。让我们试着隐藏它:

Visio.Documents(2).Masters("Database").Hidden = true     

'--> ERROR: Requested operation is presently disabled.
'--> This is a Visio-supplied stencil, Read Only, and we can't edit it!
如果我将“数据库”放入图纸中,母版将复制到工作图纸的文档模板中。激活的图形是文档#1。确保文档模具可见,然后键入:

Visio.Documents(1).Masters("Database").Hidden = True

'--> The master disappears in the Document Stencil window
无论如何,希望这是有益的,如果不是最好的消息

你为什么要先隐藏大师