C#进行Visio二次开发之事件

           

回顾Visio的对象

l  Application对象

l  Window对象

l  Document对象

l  Page对象

l  Master对象

l  Shape对象

l  Cell对象

 

 

Visio对象还有

l  Selection对象

l  Connects对象

l  Style对象

l  Keyboard

l  Mouse

l  DataRecordset

 

Application对象的事件

l  右键菜单:MarkerEvent

l  程序退出前:BeforeQuit

l  模态窗口关闭后:AfterModal

l  模态窗口出现前:BeforeModal

l  Visio事件完成:NoEventsPending

l  程序激活:AppActivated

l  程序挂起前:BeforeSuspend

l  进入获取退出ScopesEnterScope/ExitScope

l  用户动作响应提示:QueryCancelQuit

l   … …

 

Window对象的事件

l  窗口打开:WindowOpened

l  窗口改变:WindowChanged

l  窗口关闭前:BeforeWindowClosed

l  窗口关闭取消:WindowCloseCanceled

l  窗口选区Shape被删除: BeforeWindowSelDelete

l  窗口页面改变前: BeforeWindowPageTurn

l  窗口页面改变后:WindowTurnedToPage

l  Visio窗口改变:WindowActivated

l  … …

 

Document对象事件

l  文档添加:DocumentAdded

l  文档创建:DocumentCreated

l  打开文档:DocumentOpened

l  文档改变:DocumentChanged

l  文档保存:DocumentSaved

l  文档关闭:BeforeDocumentClose

l  … …

 

Page对象事件

l  页面添加:PageAdded

l  页面改变:PageChanged

l  页面删除:BeforePageDelete

l  取消页面删除:PageDeleteCanceled

l  … …

 

Shape对象事件

l  Shape删除前:BeforeShapeDelete

l  Shape添加:ShapeAdded

l  Shape改变:ShapeChanged

l  Shape删除后: ShapesDeleted

l  Shape文本编辑:BeforeShapeTextEdit

l  Shape文本编辑退出:ShapeExitedTextEdit

l  Shape 连接添加:ShapeLinkAdded

l  Shape 连接删除: ShapeLinkDeleted

l  Shape 组合变化: ShapeParentChanged

 

Master对象事件

l  模具添加:MasterAdded

l  模具改变:MasterChanged

l  模具删除:BeforeMasterDelete

l  取消模具删除:MasterDeleteCanceled

l  模具删除提示:QueryCancelMasterDelete

l  … …

 

Cell对象事件

l  Cell的值改变:CellChanged

l  Cellformula 改变:FormulaChanged

 

Selection对象事件

l  选区删除前:BeforeSelectionDelete

l  选区删除提示:QueryCancelSelectionDelete

l  选区增加:SelectionAdded

l  选区改变:SelectionChanged

l  选区取消:SelectionDeleteCanceled

l  … …

 

Connects对象事件

l  连接添加:ConnectionsAdded

l  连接移除:ConnectionsDeleted

 

Style对象事件

l  Style添加:StyleAdded

l  Style改变: StyleChanged

l  Style删除前: BeforeStyleDelete

l  Style取消删除: StyleDeleteCanceled

l  Style删除提示:QueryCancelStyleDelete

 

 

Keyboard对象事件

l  KeyDown

l  KeyPress

l  KeyUp

 

Mouse对象事件

l  MouseDown

l  MouseMove

l  MouseUp

 

事件的处理

l  实现接口IVisEventProc

n  public class EventSink : IVisEventProc

l  使用AddAdvise建立事件侦听

n  documentEvents.AddAdvise( (unchecked((short)VisEventCodes.visEvtAdd) + (short)VisEventCodes.visEvtShape),  (IVisEventProc)this, sink, "ShapeAdd");

l  实现object IVisEventProc.VisEventProc()函数,和具体处理函数挂钩

posted on   伍华聪  阅读(4646)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)

导航

< 2008年7月 >
29 30 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2
3 4 5 6 7 8 9
点击右上角即可分享
微信分享提示