ASP.NET中Visio图形的控制与数据显示
来源:互联网 发布:怎么复制淘宝的图片 编辑:程序博客网 时间:2024/04/29 20:38
<script type="text/javascript"><!--google_ad_client = "pub-1592932103935230";/* 336x280,csdnblogs, 创建于 08-5-10 */google_ad_slot = "8315096772";google_ad_width = 336;google_ad_height = 280;//--></script> <script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
背景: 在实现应用开发中, 存在这样一种需求, 在一张图中动态显示图中图元的数据并控制图元的显示方式。比如一张电气接线图, 需要动态显示各个开关的状态及各个电气设备的参数。
问题: 如何以Web方式满足这样一个需求?
解决方案: 用Visio绘制图形, 在ASP.NET中调用Visio提供的编程接口去控制Visio图中的图元,并转换成Web上可以显示的图像格式。对于每个要动态显示数据的图形, 定义一个自定义属性标识它,比如:TagNum, 然后在程序中根据TagNum的值从数据库中读取数据来设置相应图形的数据。
需要添加对Microsoft Visio 11.0 Type Library的引用(COM组件)。代码如下:
private void Button1_Click(object sender, System.EventArgs e)
{
Document doc=null;
Cell cell=null;
ApplicationClass app=new ApplicationClass();//运行Visio应用程序
string CurrentPath=MapPath(".");
doc=app.Documents.OpenEx(CurrentPath+"//bin//test2.vsd",(short)Microsoft.Office.Interop.Visio.VisOpenSaveArgs.visOpenCopy);//打开一个visio文件
const string CUST_PROP_PREFIX = "Prop."; //自定义属性前缀
try
{
for(int i=1;i<=doc.Pages[1].Shapes.Count;i++)
{
doc.Pages[1].Shapes[i].Rotate90();//将图形旋转90度
doc.Pages[1].Shapes[i].Text="hello";//设置图形的文本
if(doc.Pages[1].Shapes[i].get_CellExists("TagNum",(short)Microsoft.Office.Interop.Visio.VisExistsFlags.visExistsAnywhere)!=0)//检查定制是否存在指定定制属性
{
doc.Pages[1].Shapes[i].Text=data;//在此处显示图形数据
}
}
doc.Saved=true;//告诉Visio应用程序该文件已保存, 不然Visio要出现是否要保存的对话框,实际上并未保存,因为我们不想对源文件作修改,只是修改过后显示一下就行了。
doc.Pages [1].Export(CurrentPath+"//test.jpg");//转换成jpg格式的文件
}
finally
{
doc.Close();//关闭打开的文件
app.Quit();//退出Visio应用程序
}
}
- ASP.NET中Visio图形的控制与数据显示
- ASP.NET中Visio图形的控制与数据显示
- asp.net 前端控制后台绑定数据的显示
- Visio中使用通用的图形
- word中visio图形的处理技巧
- asp.net 控制显示图片的大小
- ASP.net中太长的数据缩略显示
- ASP.net中太长的数据缩略显示
- ASP.net中太长的数据缩略显示 .
- ASP.net中太长的数据缩略显示
- GridView是ASP.NET中功能强大的数据显示控件,它的RowDataBound事件为我们提供了方便的控制行、列数据的途径。
- ASP.NET中使用DataGrid显示数据
- asp.net 中 sql dataset 显示数据
- ASP.NET中控件的隐藏与显示
- asp.net中图片的上传与显示
- asp.net 〈%# 〉与〈%=〉的区别,显示数据与绑定数据
- asp.net中控制帖子标题中的显示字数
- ASP.Net生成业务数据的统计图形
- Linux驱动开发学习的一些必要步骤
- 5章10节递归
- Scala—Java的避难所之main(String[])
- 6章4节类的声明和对象与方法
- 6章6节存取器与类的实现
- ASP.NET中Visio图形的控制与数据显示
- 6章7街构造函数和解析函数
- 领导人语录
- 如何获得Oracle DBA工作?
- 巨一清 一朝芳草碧连天
- MS SQL SERVER中自动编号问题,以ASP为例
- 6章12节做一个.h头文件
- 什么是句柄
- 300多家公司被“域名续费”诈骗百万元