使用開啟檔案命令顯示檔案

下列步驟說明 IDE 如何處理 Visual Studio 的 [檔案] 功能表上提供的 [開啟檔案] 命令。 這些步驟也會說明專案應如何回應源自此命令的呼叫。

當使用者按一下 [檔案] 功能表上的 [開啟檔案] 命令,並從 [開啟檔案] 對話方塊中選取檔案時,會發生下列程序:

  1. IDE 會使用執行中的文件資料表判斷檔案是否已在專案中開啟。

    • 如果檔案已開啟,IDE 會重新顯示視窗。

    • 如果檔案未開啟,IDE 會呼叫 IsDocumentInProject 來查詢每個專案,以判斷哪個專案可以開啟檔案。

      注意

      IsDocumentInProject 的專案實作中,提供一個優先順序值來指示專案開啟檔案的層級。 VSDOCUMENTPRIORITY 列舉中提供優先順序值。

  2. 每個專案都會應一個優先順序等級,指出專案要開啟檔案的重要性。

  3. IDE 使用下列準則來判斷哪個專案會開啟檔案:

    • 以最高優先順序 (DP_Intrinsic) 回應的專案會開啟檔案。 如果有多個專案以這個優先順序回應,則第一個回應的專案會開啟檔案。

    • 如果沒有專案回應最高優先順序 (DP_Intrinsic),但所有專案都會以相同的較低優先順序回應,則使用中專案會開啟檔案。 如果沒有使用中專案,則回應的第一個專案會開啟檔案。

    • 如果沒有專案宣告檔案的所有權 (DP_Unsupported),則「其他檔案」專案會開啟檔案。

      如果已建立「其他檔案」專案的執行個體,專案一律會以值 DP_CanAddAsExternal 回應。 這個值表示專案可以開啟檔案。 此專案用來儲存不在任何其他專案中的開啟檔案。 此專案中的專案清單不會保存;只有當專案用來開啟檔案時,才會在 [方案總管] 顯示這個專案。

      如果「其他檔案」專案未指出它可以開啟檔案,則尚未建立專案的執行個體。 在這種情況下,IDE 會建立「其他檔案」專案的執行個體,並告知專案開啟檔案。

  4. 一旦 IDE 判斷哪個專案開啟檔案,就會呼叫該專案的 OpenItem 方法。

  5. 接著,專案可以選擇使用專案特定的編輯器或標準編輯器來開啟檔案。 如需詳細資訊,請分別參閱如何:開啟專案特定的編輯器如何:開啟標準編輯器