Visio オブジェクト モデルの概要
Visio オブジェクト モデルと対話することにより、Microsoft Office Visio 用の Office ソリューションを開発できます。 このオブジェクト モデルは、Visio のプライマリ相互運用機能アセンブリで提供されるクラスとインターフェイスで構成されています。それらは Microsoft.Office.Interop.Visio
名前空間の中で定義されています。
ここでは、Visio オブジェクト モデルの概要を簡単に説明します。 Office プロジェクトでタスクを実行するために Visio オブジェクト モデルを使用する方法については、次のトピックを参照してください。
Visio オブジェクト モデルについて
Visio では、多くのオブジェクトが操作対象になります。 これらのオブジェクトは、ユーザー インターフェイスとほぼ同様の階層形式で編成されています。 階層の最上位にあるのは、 Microsoft.Office.Interop.Visio.Application オブジェクトです。 このオブジェクトは、Visio の現在のインスタンスを表します。 Microsoft.Office.Interop.Visio.Application
オブジェクトには、Microsoft.Office.Interop.Visio.Document
オブジェクトと Microsoft.Office.Interop.Visio.Page
オブジェクト、および Microsoft.Office.Interop.Visio.Documents
コレクションと Microsoft.Office.Interop.Visio.Pages
コレクションが含まれています。 これらのオブジェクトとコレクションにはそれぞれ数多くのメソッドとプロパティがあり、それらにアクセスしてオブジェクトを処理したり、オブジェクトと対話したりできます。
詳細については、 Microsoft.Office.Interop.Visio.Application、 Microsoft.Office.Interop.Visio.Document、および Microsoft.Office.Interop.Visio.Page の各オブジェクト、 Microsoft.Office.Interop.Visio.Documents および Microsoft.Office.Interop.Visio.Pages の各コレクションの VBA リファレンス ドキュメントを参照してください。
この後のセクションでは、最上位レベルのオブジェクトとそれらの相互関係について、簡単に説明します。 このようなオブジェクトには次の 4 つがあります。
アプリケーション オブジェクト
Document オブジェクト
Page オブジェクト
アプリケーション オブジェクト
Microsoft.Office.Interop.Visio.Application アプリケーションは Visio アプリケーションを表し、他のすべてのオブジェクトの親となります。 そのメンバーは、通常、Visio 全体に適用されます。 Microsoft.Office.Interop.Visio.Application オブジェクトと Microsoft.Office.Interop.Visio.ApplicationSettings
オブジェクトのプロパティとメソッドを使用して、Visio 環境を制御できます。
VSTO アドイン プロジェクトでは、ThisAddIn
クラスの Application
フィールドを使用することで、Microsoft.Office.Interop.Visio.Application オブジェクトにアクセスできます。 詳細については、「 Programming VSTO Add-Ins。
Document オブジェクト
Microsoft.Office.Interop.Visio.Document オブジェクトは、Visio をプログラミングするための中心となるものです。 これは、図面、ステンシル、またはテンプレート ファイルを表します。 Visio ドキュメントを開くか新しいドキュメントを作成すると、新しい Microsoft.Office.Interop.Visio.Document オブジェクトが作成されます。これは、Microsoft.Office.Interop.Visio.Documents オブジェクトの Microsoft.Office.Interop.Visio.Documents コレクションに追加されます。
フォーカスがある文書は、作業中の文書と呼ばれます。 これは、Microsoft.Office.Interop.Visio.Application オブジェクトの Microsoft.Office.Interop.Visio.Application.ActiveDocument
プロパティによって表されます。
Page オブジェクト
Microsoft.Office.Interop.Visio.Page オブジェクトは、前景ページまたは背景ページの描画領域を表します。 Microsoft.Office.Interop.Visio.Page.Background
プロパティを使用すると、ページが前景ページと背景ページのどちらであるかを判定できます。
図形を作成するには、Microsoft.Office.Interop.Visio.Page.DrawSpline
メソッドや Microsoft.Office.Interop.Visio.Page.DrawOval
メソッドなどのメソッドを使用できます。 さらに、ステンシルからマスターを取得し、Microsoft.Office.Interop.Visio.Page.Drop
メソッドまたは Microsoft.Office.Interop.Visio.Page.DropMany
メソッドを使用することにより図形をページに配置できます。
Visio オブジェクト モデル ドキュメントを使用する
Visio オブジェクト モデルの詳細については、Visio の VBA オブジェクト モデルのリファレンスを参照してください。 VBA オブジェクト モデルのリファレンス ドキュメントでは、Visual Basic for Applications (VBA) コードに公開される Visio オブジェクト モデルについて説明しています。 詳細については、Visio オブジェクト モデル リファレンスを参照してください。
VBA オブジェクト モデルのリファレンス内のオブジェクトとメンバーはすべて、Visio プライマリ相互運用機能アセンブリ (PIA) の型とメンバーに対応します。 たとえば、VBA オブジェクト モデル リファレンス内の Document
オブジェクトは、Visio PIA の Microsoft.Office.Interop.Visio.Document 型に対応しています。 VBA オブジェクト モデルのリファレンスでは、ほとんどのプロパティ、メソッド、およびイベントのコード例を紹介しています。ただし、Visual Studio を使用して作成した Visio VSTO アドイン プロジェクトでこのリファレンス内の VBA コードを使用するには、それらを Visual Basic または Visual C# に変換する必要があります。
Note
現在のところ、Visio プライマリ相互運用機能アセンブリに関するリファレンス ドキュメントは提供されていません。
Visio ソリューションの作成に関連するコード例と追加のツールについては、Visio 2010 ソフトウェア開発キットを参照してください。
プライマリ相互運用機能アセンブリの追加の型
実装の違いにより VBA には表示されないプライマリ相互運用機能アセンブリの型があります。 VBA では、直接使用できるオブジェクトとメンバーだけを含む Visio オブジェクト モデルのビューが提供されます。 プライマリ相互運用機能アセンブリは同じオブジェクト モデルを公開しますが、それには、COM オブジェクト モデルのオブジェクトをマネージド コードに変換する、その他のインターフェイス、クラス、およびメンバーも含まれています。 これらの追加の項目は、コードで直接使用するためのものではありません。
詳細については、「Office プライマリ相互運用機能アセンブリのクラスとインターフェイスの概要」と Office プライマリ相互運用機能アセンブリ」を参照してください。