Dim Viewer1 As VisioViewerCtl.Viewer
Private Sub Form_Load()
Set Viewer1 = Form1.Controls.Add("VisioViewer.Viewer", "Viewer1", Form1)
Viewer1.Visible = True
Viewer1.Left = 200
Viewer1.SRC = "C:\Users\<variable>username</variable>\Documents\MyFile.vsd"
Viewer1.Height = 5000
Viewer1.Width = 5000
Viewer1.DisplayPropertyDialog
End Sub
HTML 网页上的编程Visio Viewer
使用 Visio Viewer 控件,通过在页面的源代码中手动插入标记和参数,将 Visio 绘图嵌入网页中。 若要编写源代码,可以使用文本编辑器(如记事本)或任何其他创建网页的应用程序,例如 Microsoft Expression Web 3 或 SharePoint Designer。
您可以使用 PARAM 标记设置 Visio Viewer 的任何属性,以设置 Visio Viewer 的 Src 属性,如以下示例代码中所示。
请记住,因为 Visio Viewer 是一种 ActiveX 控件,其行为受 Internet Explorer 安全设置影响。
以下代码演示如何在网页上的 Visio Viewer 控件中打开 Visio 绘图文件。 它会设置页面上 Visio Viewer 控件的高度和宽度,并将源文档加载到控件中。
在文本编辑器中将代码复制到一个文件中,并将生成的文档另存为 HTM 文件。 Src 参数引用的 Visio 文档“SalesData.vsd”应位于与此 HTM 文件相同的文件夹中。
<OBJECT id="DrawingControl1"
height=400
width=600
classid="clsid:279D6C9A-652E-4833-BEFC-312CA8887857" VIEWASTEXT>
<PARAM NAME="Src" VALUE="SalesData.vsd">
</OBJECT>
</html>
在托管代码中对 Visio Viewer 进行编程
例如,使用托管代码在各种容器(例如 Windows 窗体)中实例化Visio Viewer控件。 在此之前,您必须获取对 Visio Viewer API 的引用。
执行下列步骤,获取 Visual Studio 2008 项目中对 Visio Viewer API 的引用。
获取 Visual Studio 项目中对 Visio Viewer API 的引用
在 “开始 ”菜单上,指向“ 所有程序”,选择“ 附件”,然后选择 “命令提示符” 以打开“命令提示符”窗口。
在“命令提示符”窗口中,导航到“程序文件”文件夹的“Microsoft Office/Office 14”子文件夹。
将文件 VViewer.dll 复制到您有权写入新文件的文件夹位置(例如,您的用户文件夹)。
关闭“命令提示符”窗口,然后打开 Visual Studio 2008 命令提示符窗口。 (在“开始”菜单上,指向“所有程序”,选择“Microsoft Visual Studio 2008”,选择“Visual Studio Tools”,然后选择“Visual Studio 2008 命令提示符) ”。
在 Visual Studio 2008 命令提示符窗口中,导航到您将 Visio Viewer DLL 文件复制到其中的文件夹。
在该文件夹中,键入 AxImp.exe vviewer.dll
以生成多个文件,包括AxVisioViewer.dll。
在 Visual Studio 2008 中,打开一个新的 Windows 窗体应用程序项目。
在项目中的“ 项目 ”菜单上,选择“ 添加引用”,然后选择“ 浏览”。
浏览到创建AxVisioViewer.dll文件的文件夹,在列表中选择该文件,然后选择 “确定”。
在您的 Visual Studio 项目中,在 Form1.cs 文件中,添加以下代码以对 Visio Viewer 控件进行实例化,设置部分属性并将测试文件加载到控件中。 此代码假定“文档”文件夹中有一个名为 Test.vsd 的 Visio 文件,位于所示路径处。 相应地修改为您的计算机的路径和文件名。
<code language="CS" type="developer">public partial class Form1 : Form
private AxVisioViewer.AxViewer viewer;
/// <summary>
/// The Visio Viewer OM
/// </summary>
public AxVisioViewer.AxViewer Viewer
return this.viewer;
public Form1()
this.InitializeComponent();
this.Resize += new EventHandler(this.UpdateSize);
this.viewer = new AxVisioViewer.AxViewer();
this.Controls.Add(this.viewer);
this.viewer.CreateControl();
this.viewer.Location = new Point(0, 0);
this.UpdateSize(null, null);
public void UpdateSize(object obj, EventArgs ea)
this.viewer.ClientSize = new Size(this.ClientSize.Width - 150, this.ClientSize.Height - 150);
private void Form1_Load(object sender, EventArgs e)
this.viewer.Load("C:\\users\\username\\documents\\viewer\\test.vsd");
</code>
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:https://aka.ms/ContentUserFeedback。
提交和查看相关反馈