我想打開一個Visio 2013文檔,並使用Visio 2013 SDK(Visio 2013 SDK)按順序遍歷流程圖對象,之後將實現自定義代碼以將流程圖對象中的值寫入文本文件。我們的目標是能夠使用C#而不是使用Visio內置的VBA宏來執行所有這些操作。這是否可能,如果有的話是否有任何入口點代碼樣本可用?Visio 2013 - 讓C#能夠像宏一樣工作?
2
A
回答
1
在VBA中你可以做的所有事情都可以在C#中完成(通過採用當然的語法)。意思是,Visio對象模型同樣可以從VBA和C#訪問。至於代碼示例,「順序迭代」的含義並不十分清楚。例如,如果圖上的形狀形成一個循環,你會怎麼做?它沒有開始也沒有結束。或者是一棵樹?
雖然,你可以比較容易地枚舉所有的形狀和單獨所有連接:
using System;
using Visio = Microsoft.Office.Interop.Visio;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var app = new Visio.Application();
var doc = app.Documents.Open(args[0]);
var page = doc.Pages[1];
foreach (Visio.Shape shp in page.Shapes)
Console.WriteLine("shape #{0}: text: '{1}'", shp.ID, shp.Text);
foreach (Visio.Connect conn in page.Connects)
Console.WriteLine("connector: #{0} -> #{1}", conn.FromSheet.ID, conn.ToSheet.ID);
app.Quit();
}
}
}
在這些線程看看:
C# code to read visio shape's connectivity with other shapes in a flow chart
Traverse through every possible path in a Visio Flow-Chart with C#
注意,簡單地將形狀值寫入文本文件,您可以使用「查看」選項卡上的「形狀報告」按鈕。查看更多有關「形報告」在Visio:
相關問題
- 1. Excel VBA Application.CountIf()不能像其他宏一樣工作
- 2. C++引用是否像宏替換一樣工作?
- 3. 讓NSComboBox像HTML組合一樣工作
- 4. 有沒有人能夠讓FB.Canvas.setUrlHandler工作?
- 5. 如何能夠讓圖像
- 6. InetAddress.getAllByName()不能像廣告一樣工作?
- 7. 我如何讓WP Featherlight能夠像畫廊一樣使用圖像?
- 8. C#能夠像Java一樣使用SPI(Meta-inf/service)嗎?
- 9. 如何讓Three20的TTStyledTextLabel能夠與外部圖像一起工作?
- 10. Visio Professional 2013不支持UML部署圖。如何使用Visio 2013創建一個?
- 11. 我怎樣才能讓Lua工作?
- 12. AngularJS和一個外部API - 讓它像PostMan一樣工作
- 13. 只有我能夠保存啓用宏的工作簿?
- 14. 將Visio宏導出到Visio COM-Add-in
- 15. Variadic宏需要一個無意義的宏讓它工作?
- 16. Sharepoint 2013中的Visio工作流可視化
- 17. 工作excel 2013宏不工作在excel 2016
- 18. 如何讓CSS樣式和jquery像Doctor div一樣與Clinic div一起工作?
- 19. Webapp能夠脫機工作!
- 20. 如何讓Eclipse SVN/Team Synchronize像命令行SVN一樣工作?
- 21. 讓斯萊普工作就像LookAt(x,Vector3.Right)一樣
- 22. 想用熊貓讓它看起來/像sql一樣工作
- 23. 如何讓spydlay模塊像httplib/http.client一樣工作?
- 24. 如何讓PHP的Magic __set像自然變量一樣工作?
- 25. 如何讓gluLookAt和glPerspective像glortho一樣工作?
- 26. 如何讓Kendo DateTimePicker格式像'toLocaleString'一樣工作?
- 27. 如何讓emacs像django的「ipython manage.py shell」一樣工作?
- 28. 有沒有辦法讓div像iframe一樣工作?
- 29. 讓exec()PHP像在命令行一樣工作
- 30. Android:如何讓onTouch像onClick一樣工作?
謝謝三行我需要的是打開文檔的那些,我意識到,一旦你發帖說爲什麼我的代碼是不工作有人路過該程序是一個讓我頭痛的頁面。 – user3215564