主要介绍asp.net调用visio com的基本用法,主要用于控制visio图形背景色,文字显示等。

主要步骤:

1、 项目中引用COM组件,找到Mircosoft Visio 14 Type Library(根据Visio版本,14可能有所不同)。

2、 项目编译通常会报错:无法嵌入互操作类型“Microsoft.Office.Interop.Visio.ApplicationClass”。请改用适用的接口。此时将Microsoft.Office.Interop.Visio这个引用右键属性将嵌入互操作类型true改成false。

3、 下面代码完成Visio图中形状底色的改变和图形文字的修改(主要代码):

Document doc = null;

ApplicationClass app = new ApplicationClass();//运行Visio应用程序

string currentPath = Server.MapPath("~/A.vsd ");//文件路径

doc = app.Documents.OpenEx(currentPath, (short)Microsoft.Office.Interop.Visio.VisOpenSaveArgs.visOpenCopy);//打开一个visio文件

Shape shape1 = doc.Pages[1].Shapes["Test"];//此处获取visio中指定名称的形状

shape1.Text = "Hello World";//形状文字修改

shape1.get_CellsU("FillPattern").ResultIU = 1;//设置 背景色时 需设置

shape1.get_CellsU("FillBkgnd").ResultIU = (double)VisDefaultColors.visDarkYellow;//背景色

doc.Close();//关闭打开的文件

app.Quit();//退出Visio应用程序

4、Visio中需打开开发者模式,这样才能给指定形状命名。

5、发布到服务器上需要配置相应的权限,可以参考Excel 组件服务权限配置。

asp.net visio com接口 asp.net和visio混合编程的更多相关文章

  1. ASP.NET Web API 接口执行时间监控

    软件产品常常会出现这样的情况:产品性能因某些无法预料的瓶颈而受到干扰,导致程序的处理效率降低,性能得不到充分的发挥.如何快速有效地找到软件产品的性能瓶颈,则是我们感兴趣的内容之一. 在本文中,我将解释 ...

  2. Asp.Net Web Api 接口,拥抱支持跨域访问。

    如何让你的 Asp.Net Web Api 接口,拥抱支持跨域访问. 由于 web api 项目通常是被做成了一个独立站点,来提供数据,在做web api 项目的时候,不免前端会遇到跨域访问接口的问题 ...

  3. Asp.Net Web Api 接口

    如何让你的 Asp.Net Web Api 接口,拥抱支持跨域访问.   由于 web api 项目通常是被做成了一个独立站点,来提供数据,在做web api 项目的时候,不免前端会遇到跨域访问接口的 ...

  4. asp.net中http接口的开发

    第一篇博客,如有不足请大家多多谅解. 最近一段时间主导着一个app的开发.所有功能都交给后台接口进行处理.采用http,传输的数据类型为json. http接口是一种基于基于TCP.http服务的ap ...

  5. Asp.Net WebAPI配置接口返回数据类型为Json格式

    Asp.Net WebAPI配置接口返回数据类型为Json格式   一.默认情况下WebApi 对于没有指定请求数据类型类型的请求,返回数据类型为Xml格式 例如:从浏览器直接输入地址,或者默认的XM ...

  6. ASP.NET WebApi服务接口如何防止重复请求实现HTTP幂等性

    一.背景描述与课程介绍 明人不说暗话,跟着阿笨一起玩WebApi.在我们平时开发项目中可能会出现下面这些情况; 1).由于用户误操作,多次点击网页表单提交按钮.由于网速等原因造成页面卡顿,用户重复刷新 ...

  7. ASP.NET MVC 5 02 - ASP.NET MVC 1-5 各版本特点

    参考书籍:<ASP.NET MVC 4 高级编程>.<ASP.NET MVC 5 高级编程>.<C#高级编程(第8版)>.<使用ASP.NET MVC开发企业 ...

  8. .NET跨平台之旅:ASP.NET Core从传统ASP.NET的Cookie中读取用户登录信息

    在解决了asp.net core中访问memcached缓存的问题后,我们开始大踏步地向.net core进军——将更多站点向asp.net core迁移,在迁移涉及获取用户登录信息的站点时,我们遇到 ...

  9. ASP.NET MVC 随想录—— 使用ASP.NET Identity实现基于声明的授权,高级篇

    在这篇文章中,我将继续ASP.NET Identity 之旅,这也是ASP.NET Identity 三部曲的最后一篇.在本文中,将为大家介绍ASP.NET Identity 的高级功能,它支持声明式 ...

随机推荐

  1. GPS原始经纬度转百度经纬度

    protected void runTest() throws Throwable { try { BaiduLocation bl = new BaiduLocation(); bl.gpsx = ...

  2. Getting NHibernate to generate a HiLo string ID

    We've got a large system that's loosely bound to its data source (Navision) via Unity - we're gettin ...

  3. 0c-41-ARC使用特点及注意事项

    1.ARC特点总结 1)不允许调用release,retain,retainCount 2)允许重写dealloc,但是不允许调用[super dealloc] 3)@property的参数: str ...

  4. C#实现ByteBuffer类 .

    在写网络程序的时候,经常需要往一个数组里面压数据或者取数据,而Java中再Java.nio中有个ByteBuffer能很方便的实现,Delphi中也有个Stream类有着同样的功能,这里我就模仿JAV ...

  5. RosettaNet

    RosettaNet 这一名字源自于 1799 年在埃及发现的 Rosetta Stone .这要追溯到公元前 196 年,该石头是在 Rosetta (Rashid) 镇附近被人发现的,上面用两种不 ...

  6. QNX 实时操作系统(Quick Unix)

    Gordon Bell和Dan Dodge在1980年成立了Quantum Software Systems公司,他们根据大学时代的一些设想写出了一个能在IBM PC上运行的名叫QUNIX(Quick ...

  7. 项目源码--Android新闻财经类商用要求源码

    技术要点: 1. 商用要求源码框架 2. 登录与注册用户系统模块 3. Android的Http通信以及多线程处理模块 4. Andorid的网络数据处理模块 5. Andorid的版本检测与升级模块 ...

  8. [Tips]解决HG之waiting for lock on repository

    # Symptom 在tortoiseHg中commit或者Sync change的时候,总是出现下面的错误: waiting for lock on repository ... # Solutio ...

  9. 用javascript获取屏幕高度和宽度等信息

    网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽: document.body.offsetWi ...

  10. asp.net mvc 从数据库中读取图片的实现代码

    首先是创建一个类,继承于ActionResult,记住要引用System.Web.Mvc命名空间,如下: public class ImageResult : ActionResult { publi ...