プロジェクトのコンテキスト
ユーザーがプロジェクトおよびプロジェクト項目を追加または操作すると、IDE ではプロジェクトのコンテキストの概念を使用して、さまざまな操作を実行する方法を決定します。
通常、ファイルは、ユーザーが [新しいプロジェクト] コマンドを選択して明示的に作成するか、[ファイル] メニューの [プロジェクトを開く] コマンドを選択して使用できるようにする標準プロジェクト オブジェクトです。 このような場合、ファイルが作成されてプロジェクトのコンテキストで開かれます。また、プロジェクト タイプで、ドキュメントを編集するためのコンテキストが定義されます。
一部のプロジェクトは、非常に豊富なコンテキストを提供します。 たとえば、プロジェクトでは、プログラムによるプロジェクト スコープ名前空間、またはデータ バインディング用のプロジェクト スコープ データベース接続を管理します。 ユーザーは、ソリューション エクスプローラーに表示されるプロジェクト項目などの特定のプロジェクト オブジェクトを使用して、ファイルまたはデータベース接続を直接何度も開くことができます。
それ以外の場合は、項目のプロジェクト コンテキストは明示的に指定されません。 たとえば、ユーザーが、[ファイル] メニューの [既存のファイルを開く] コマンドを選択してファイルを開くとき、デバッガーでファイルを操作するとき、またはユーザーが [検索と置換] ダイアログ ボックスで [フォルダーを指定して検索] コマンドをクリックするときには、項目のコンテキストを使用することはできません。 このような状況に対処するために、IDE では IVsUIShellOpenDocument を呼び出して、ドキュメントを開くための最適なプロジェクトを検索するプロセスを管理します。