亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

visio二次開發--判斷文檔是否已發生變化(變化就加星號*)

2020-01-24 03:29:47
字體:
來源:轉載
供稿:網友

1.最近做一個故障樹診斷的項目,用visio二次開發,可以同時打開多個繪制的故障樹圖形文檔。項目中需要實現判斷文檔是否發生變化,這是很多編輯軟件的基本功能,變化了就加個星號*。如果整個項目從0開始自己設計就是另外一回事了,這里是基于visio二次開發,首先想到的是去看微軟的官方文檔,看是否有相關的API,或則是否改變會觸發某些事件,遺憾的是我沒找到。

2.不過visio畢竟是微軟的產品,做的就是好。它對程序運行動態中的很多過程進行了定義和監視,有一個對Scope的監視,比如粘貼,復制,刪除,移動對象,形狀數據更改都對應一個Scope對象,都有唯一的scopeId(Scope的具體定義就不細說了,具體看開發文檔)。值得一提的是,這里每個操作的對應Scope的信息我不是從開發文檔看的,而是使用Visio里面提供的開發工具(需要在設置里面選擇該項功能才有)一個個操作觀察的,具體看圖

括號中的內容就是對應的Scope對象的信息。開頭的編號是對應的唯一scopeID。每行信息都是一個事件,都可以在程序監視和觸發。EnterScope和ExitScope之間為一個Scope對象。

所以監視EnterScope事件,然后判斷當前scopeID就可以知道進行了什么操作,比如scopeID==1187,就是移動了對象。然后把移動對象,粘貼,刪除等等之類的都或上,這要是這些就可以判定文檔發生了改變。

我的項目中具體涉及代碼如下:

復制代碼 代碼如下:

private void VisApplication_EnterScope(Visio.Application app, int scopeID, String description)//故障樹文檔發生改變,要記錄,關閉時提示保存
        {
            axDrawingControl1.Document.Pages[1].CellChanged -= new EPage_CellChangedEventHandler(Form_paint_CellChanged);//文檔發生更改事件
            axDrawingControl1.Document.Pages[1].CellChanged += new EPage_CellChangedEventHandler(Form_paint_CellChanged);//文檔發生更改事件
            //   Console.WriteLine("$currentScope.tostring$" + app.CurrentScope.ToString()+ "$ID$" + scopeID.ToString() + "$Des$" + description);
            /*
             1188$ID$1188$Des$設置對象大小;0
            delete=1486,//刪除對象
            dragInto=1246,//拖入圖形
            moveShape = 1187,//移動對象
            shapeData=1312,//形狀數據
            changePageSize=1239,//更改頁面大小
            changeShapeSize = 1189,//設置對象大小
            paste = 1022 //粘貼
            paste2 = 1158 //粘貼
            1501//插入注釋
            */
            if (scopeID == 1486 || scopeID == 1246 || scopeID == 1187 || scopeID == 1312 || scopeID == 1239 || scopeID == 1189 || scopeID == 1022 || scopeID == 1158 || scopeID == 1188 || scopeID == 1501)
            {
                needSave = true;//變化了,需要保存到臨時文件夾

                string temp = TabControl.SelectedTab.Text;
                if (temp[temp.Length - 5] != '*')
                {
                    TabControl.SelectedTab.Text = temp.TrimEnd() + " *    ";
                }
            }
        }

3.Scope的具體定義開發文檔中很詳細,如果有耐心你也可以一個個試,在開發者工具-事件監視器里觀察。
4.至于前兩句EPage_CellChangedEventHandler,這是我的程序中為了動態判斷形狀數據是否合法,實事監控形狀數據對應的Cel發生變化的事件進行判斷。為什么先刪除事件代理再添加?是為了解決程序里的另一個問題,這里不細說。

程序中的效果如下:

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美一级片免费在线| 精品露脸国产偷人在视频| 欧美日韩在线看| 中文字幕亚洲无线码在线一区| 成人在线视频网| 国产精品成av人在线视午夜片| 主播福利视频一区| 中文字幕久热精品在线视频| www.99久久热国产日韩欧美.com| 日韩精品中文字幕在线观看| 韩国福利视频一区| 国产精品久久婷婷六月丁香| 91在线观看欧美日韩| 97视频在线播放| 中文字幕日韩免费视频| 久久天堂av综合合色| 中文字幕日韩av电影| 国产精品高清网站| 最近2019年手机中文字幕| 亚洲成人a**站| 7m第一福利500精品视频| 精品人伦一区二区三区蜜桃免费| 国产成人一区二区| 亚洲人av在线影院| 国产精品专区h在线观看| 亚洲最大中文字幕| 久久久亚洲国产天美传媒修理工| 久久精品99久久香蕉国产色戒| 中文字幕欧美日韩在线| 伊人亚洲福利一区二区三区| 国产欧美精品久久久| 日韩美女视频免费在线观看| 欧美一级黑人aaaaaaa做受| 欧美夫妻性生活视频| 中文字幕亚洲欧美日韩2019| 亚洲人成网7777777国产| 亚洲成人a**站| 久久视频这里只有精品| 欧美天天综合色影久久精品| 国产97在线播放| 国产欧美在线观看| 亚洲爱爱爱爱爱| 欧美视频在线观看 亚洲欧| 欧美一区二区三区……| 蜜臀久久99精品久久久久久宅男| 在线一区二区日韩| 欧美激情手机在线视频| 久久精品电影网| 成人国产亚洲精品a区天堂华泰| 欧美午夜电影在线| 欧美激情性做爰免费视频| 亚洲第一视频在线观看| 一本色道久久88亚洲综合88| 欧美激情在线播放| 国产精品永久免费视频| 欧美成在线视频| 国产精品日韩精品| 久久夜色精品国产| 国产精品一区二区久久久久| 国产精品6699| 中文字幕精品久久久久| 成人午夜黄色影院| 大胆人体色综合| 亚洲国产精品视频在线观看| 国精产品一区一区三区有限在线| 欧美影院在线播放| 久久免费视频在线| 91久久久久久国产精品| 亚洲性日韩精品一区二区| 亚洲精品欧美日韩| 久久人人爽人人| 91探花福利精品国产自产在线| 国产乱肥老妇国产一区二| 色综合影院在线| 亚洲最大福利网| 久久久精品欧美| 欧美裸体xxxx极品少妇软件| 在线成人免费网站| 欧美在线xxx| 久久精品99久久香蕉国产色戒| 国产精品aaaa| 久久精品国产亚洲| 久久亚洲精品一区| 国产一区二区丝袜| 欧美日韩国产一区中文午夜| 国产精品欧美日韩久久| 亚洲成色www8888| 久久久人成影片一区二区三区观看| 日韩精品中文字幕在线播放| 欧洲精品在线视频| 久久久久久久网站| 国产精品爱久久久久久久| 一本色道久久综合亚洲精品小说| 国产欧美精品在线播放| 午夜精品久久久久久久99热| 中文字幕日韩av| 97视频在线观看免费高清完整版在线观看| 国产97在线|亚洲| www欧美日韩| 亚洲精品成人网| 欧美性少妇18aaaa视频| 九九热精品视频国产| 日韩精品在线观看视频| 日韩成人在线视频| 国产亚洲视频在线观看| 2019中文字幕在线免费观看| 亚洲性生活视频在线观看| 亚洲人成五月天| 欧美日韩在线视频一区| 国产精品日本精品| 国产精品视频免费观看www| 国产精品电影网| 97视频在线观看网址| 色噜噜狠狠狠综合曰曰曰88av| 欧美激情按摩在线| 国产手机视频精品| 国产精品成人久久久久| 国产+成+人+亚洲欧洲| 日韩中文字幕在线观看| 疯狂欧美牲乱大交777| 欧美xxxx做受欧美| 国外成人免费在线播放| 欧美一级淫片videoshd| 国产欧美日韩视频| 欧美日韩国产黄| 日韩av电影在线播放| 欧美日韩亚洲国产一区| 成人午夜高潮视频| 国产精品欧美在线| 国产91热爆ts人妖在线| 中文字幕精品一区二区精品| 欧美性猛交丰臀xxxxx网站| 日韩欧美综合在线视频| 国产精品女主播| 国产成人精彩在线视频九色| 国产精品户外野外| 国模叶桐国产精品一区| 国产精品久久久久久久久久免费| 成人免费激情视频| 欧美人成在线视频| 久久久人成影片一区二区三区观看| 97国产在线观看| 国产成人精品久久二区二区| 欧美日韩一区二区在线| 亚洲毛片在线观看.| 亚洲专区中文字幕| 欧美日韩亚洲一区二区| 欧美成人四级hd版| 亚洲精品国精品久久99热| 国产精品久久久久久久午夜| 欧美限制级电影在线观看| 亚洲va欧美va在线观看| 欧美成aaa人片免费看| 日本91av在线播放| 成人福利网站在线观看11| 久久久久国产视频| 色伦专区97中文字幕| 爽爽爽爽爽爽爽成人免费观看| 国产精品一区av| 欧美一二三视频| 91极品视频在线| 亚洲欧洲成视频免费观看| 国产精品亚洲аv天堂网| 日韩免费视频在线观看|