我正在为应用程序从Interop自动化Visio。一切都很顺利,唯一的问题是我不希望最终用户看到正在填充的visio画布,这就是目前正在发生的事情。我(来自.Net)正在用程序打开Visio画布,并用形状填充它,这个过程正在向用户显示。
我已经查看了Microsoft.Office.Interop.Visio.Application对象和Microsoft.Office.Iterop.Visio.Document的属性,但找不到可以设置为false以向用户隐藏此属性的布尔值。我过去曾自动化过Excel和Access,两者都有一个布尔值,你可以将其设置为false,然后最终用户就看不到自动化过程的细节。
我的问题是,当通过.Net Interop以编程方式用形状填充画布时,是否有方法向最终用户隐藏Visio UI?如果是,我该怎么做?
感谢
Application对象上有一个ShowChanges属性,可能适合您:
http://msdn.microsoft.com/en-us/library/ff766801.aspx
此外,如果您根本不打算显示应用程序,可以使用IVInvisibleApp界面(在Microsoft.Office.Interop.Visio上)。
在此处查看InvisibleApp对象:
http://msdn.microsoft.com/en-us/library/ff766890.aspx
在Application
对象上是一个包含Windows集合的Windows
属性。您可以在Windows上进行迭代,并将Window的Visible
属性设置为false。