Visio二次开发---第三篇打开Visio文件

接上一篇,在加载完加载axDrawingControl1控件之后,我尝试着去打开一个Visio图纸,Visio图纸的打开和一般文件的打开有些不同,它是通过DrawingControl.Src 属性来打开Visio图纸的,Visio的帮助文档中这么解释:当 Visio Drawing Control 试图打开您在 Src 属性中指定的文件时,它的行为与 Visio 试图打开文件时的行为大致相同;它首先搜索在DrawingPaths 属性字符串中列出的所有路径。如果要打开的文件的路径在该字符串中列出,您可以只指定文件名。如果没有列出,则必须指定一个完全限定路径和文件名。

打开文件的方法有很多种,以下是我根据一些资料整理出来的一些代码,仅供参考:

 private void tsmiOpenPicDoc_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "Visio文件(*.vsd)|*.vsd|所有文件(*.*)|*.*";//打开文件格式
            ofd.FilterIndex = 1;//文件格式索引
            ofd.RestoreDirectory = true;//对话框关闭前是否还原当前目录
            ofd.CheckFileExists = true;//检查文件是否存在
            ofd.CheckPathExists = true;//检查路径是否存在

            //如果文件打开成功则读取文件并且在axDrawingControl中展示
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                Console.WriteLine(ofd.FileName);
                this.axDrawingControl.Src = ofd.FileName;
                // this.VisWindow.WindowState = FormWindowState .Maximized ;
                SetInitWindow();
                this.WindowState = FormWindowState.Maximized;
            }
        }

打开模具的方法与之类似,不过模具是在已存在的Visio图纸上打开的,也就是在Documents中打开。通过axDrawingControl.Document.Application的 Documents属性来调用Open方法来打开模具。

 private void tsmiOpenStencil_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "Visio模具文件(*.vss)|*.vss|所有文件(*.*)|*.*";//打开文件格式
            ofd.FilterIndex = 1;//文件格式索引
            ofd.RestoreDirectory = true;//对话框关闭前是否还原当前目录
            ofd.CheckFileExists = true;//检查文件是否存在
            ofd.CheckPathExists = true;//检查路径是否存在

            //如果文件打开成功则读取文件并且在axDrawingControl中展示
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                Console.WriteLine(ofd.FileName);
                //this.axDrawingControl.Src = ofd.FileName;
                VisApplication.Documents.Open(ofd.FileName);
            }
        }

学习新的东西,总会遇上很多问题,我们要 多一些耐心去思考探究问题的根源,努力去解决问题,而不是躲避!


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Visio是一款微软公司生产的流程图和矢量绘图工具,可用于创建各种类型的图表和图形。Visio支持二次开发,使开发者能够自定义和扩展Visio的功能。 Visio二次开发使用C#编程语言,这是一种面向对象的编程语言,广泛用于.NET开发平台。开发者可以使用Visio VBA(Visual Basic for Applications)对象模型,或者使用Visio的COM(Component Object Model)接口来访问和控制Visio的各种对象和属性。 通过Visio二次开发,开发者可以实现很多自定义功能,例如自动创建和修改图形、导入和导出数据、与数据库进行交互等。开发者可以通过编写代码来自动化Visio的一些操作,提高工作效率和准确性。 对于Visio二次开发,开发者需要了解Visio的对象模型和相关的编程知识。他们需要了解如何创建和操作Visio的各种对象,例如页面、图形、连接等。还需要了解如何使用Visio的事件模型,以便在图形发生变化时触发相应的操作。 Visio二次开发还可以结合其他开发工具和技术,例如.NET框架、数据库技术、Web服务等。通过这些工具和技术的结合,开发者可以实现更复杂和强大的功能,满足不同的业务需求。 总结来说,Visio二次开发是指使用C#编程语言对Visio进行自定义和扩展。通过二次开发,开发者可以实现自动化、定制化和集成化的功能,提高工作效率和准确性。Visio二次开发需要开发者具备Visio对象模型的知识和相关的编程技术。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值