Share via


瀏覽和重新排列相依性圖形

您可以重新排列相依性圖形的項目使其更容易閱讀及改善轉譯效能。

需求

本主題內容

  • 管理大型圖表

  • 變更圖形配置

  • 瀏覽圖形

  • 檢查的節點和連結

  • 隱藏或顯示節點和連結

  • 群組節點

藉由使用滑鼠或鍵盤可以有更多方面瀏覽圖形,請選取空白圖形的說明連結。

管理大型圖表

當您第一次產生相依性圖形, Visual Studio 會建立其找到所有相依性的程式碼索引。 雖然這個程序可能需要一些時間,特別是的大型方案或圖形與多個連結時,這個索引改善稍後運行作業的效能。 如果程式碼後變更,則 Visual Studio 只重新索引更新的程式碼。

如果您不想等圖形完成產生動作,您可以隨時取消產生程序並嘗試下列建議:

在產生圖表之後,請嘗試下列建議:

  • 在圖形工具列上,選取 [快速叢集]圖形工具列上的 [快速叢集] 按鈕 ,讓您可以看到在程式碼中的自然相依性叢集。 請參閱 變更圖形配置。

    相依性圖形 - 快速叢集配置

  • 組織圖形至較小範圍透過將相關的節點分組。 摺疊這些群組以只檢視會自動出現的群組間相依性。 請參閱 群組節點。。

  • 手動編輯圖形移除不需要的節點和連結。 變更圖形不會影響基礎程式碼。 請參閱 編輯和自訂相依性圖形

變更圖形配置

若要

在圖形工具列或圖表捷徑功能表

排列整個圖表相依性在特定方向。 這樣可幫助您看到程式碼中的架構圖層。

選取下列其中一個圖形以樹狀目錄顯示:

  • 由左至右 由左至右配置按鈕

  • 由右至左 由右至左圖形按鈕

  • 由上至下 由上到下圖形按鈕

  • 由下至上 由下到上圖形按鈕

請參閱程式碼中相依性的自然叢集。

選擇 快速叢集 圖形工具列上的 [快速叢集] 按鈕 來查看叢集中央依賴性最高的節點以及在這之外依賴性最低的節點

相依性圖形 - 快速叢集配置

若要移動圖形中的特定節點,請拖動它們。 當移出其他的節點和連結,當你拖移節點請按住 [移位] 按鍵。 藉由選取樹狀配置單獨變更圖形中一個圖形群組中的配置、 [快速叢集] 或 [清單檢視],可讓群組的內容插入清單中。 請參閱 群組節點。。

注意事項注意事項

下列功能無法在這個版本: [網路上的芳鄰瀏覽模式]、 [蝴蝶模式]、 [進階選項] 和 [相依性矩陣檢視]。

瀏覽圖形

若要

請執行這些步驟

掃描圖形

拖曳圖形任意方向。

放大或縮小圖形

滾動滑鼠滾輪

-或-

選取工具列上的加號 (+) 或減號 (-)。

-或-

若要放大特定區域,請使用滑鼠右鍵在該區域周圍繪製一個矩形。

調整大小並符合其圖形的視窗

在圖形工具列上,選取 [縮放至適當比例]。

-或-

雙擊圖形的空白區域。

調整大小並使圖形中心在特定節點

展開這個節點。 雙擊節點中的空白區域。

Visual Studio 調整圖形,因此整個群組符合在圖表視窗內的。

如果您雙擊摺疊的命名空間、類別,或其成員, Visual Studio 會顯示程式碼定義。

獨立變更目前選取節點的焦點

請按 TAB

目前在焦點內時,虛線會圍繞在節點周圍。

依名稱尋找在圖形上的節點。

提示提示
若要尋在方案中但不在圖形中的物件,可在 [方案總管]找到,然後將其拖曳至圖形。
相依性圖形搜尋方塊
  1. 按下 CTRL+F

    搜尋方塊會出現在圖形上的右上角。

  2. 輸入項目名稱。 若要自訂搜尋,請選擇搜尋選項。

    符合搜尋的第一個項目在圖形上顯示為已選取。

  3. 若要查看另一個符合項目,請選取 [尋找下一個] (按下 [F3])。

    -或-

    若要選取任何相符的項目,請開啟下拉式清單。 選取 [全選]。

重要事項重要事項
只有當群組已先展開時,您可以使用搜尋盒子找已摺疊群組中符合的項目。若要尋找這些符合項目並自動展開其母群組,可以在搜尋盒子中選取此選項。

尋找連結的來源或目標

如果連結太多,可以使用此方法輕鬆地查看特定連結的來源或目標。

  1. 將圖形配置變更為樹狀配置或 快速叢集 圖形工具列上的 [快速叢集] 按鈕 配置.

    請參閱 變更圖形配置。

  2. 將滑鼠指標移動到位於連結上方或選取 連結。

    Visual Studio 會顯示兩個箭號和列出連結與其他連結細節的來源和目標的清單。

  3. 選擇您要遵循之方向的箭號按鈕。

    根據您選取的方向,來源或目標隨即顯示為已選取。

選取所有未選取的節點

開啟所選節點的捷徑功能表。 選取 [選取], [反向選擇]。

選取連結至已選取節點的其他節點

開啟所選節點的捷徑功能表。 選取 [選取] 和下列其中一項:

  • 若要選取直接與所選節點連接的其他節點,請選取 [ 連入相依性]。

  • 若要選取直接從選定節點連接出的其他節點,請選取 [連出相依性]。

  • 若要選取直接與所選節點連接並從選定節點連接出的其他節點,請按一下 [加入兩者]。

  • 若要選取所有與選定之節點有連結的節點,請按一下 [選取所有連接的節點]。

  • 若要選取所有選定節點的子系,請選取 [子系]。

檢查的節點和連結

相依性圖形顯示下列連結:

  • 個別連結表示兩個節點之間的單一相依性。

  • 跨群組連結表示不同群組中兩個節點之間的關聯性。

  • 彙總連結表示兩個群組之間方向相同的所有相依性。

提示

圖形預設只會在選取的節點間顯示跨群組連結。若要隨時都顯示這些連結,請在圖形工具列上,開啟變更連結在圖形上的呈現方式清單[變更連結在圖形上的呈現方式] 按鈕。選取顯示所有跨群組連結

這個隱藏了群組之間的彙總連結。

若要

請執行這些步驟

檢視關於節點或連結的更多資訊。

將滑鼠指標移至這個節點或連結上方,直到出現工具提示。

一個彙總連結的工具提示會列出其所表示的個別相依性。

-或-

開啟節點或連結的捷徑功能表。 選擇 [內容]。

顯示或隱藏群組的內容

  • 若要展開群組時,開啟節點的捷徑功能表。 選取 [群組], [展開]。

    -或-

    將滑鼠指標移至這個節點的上方,直到形箭號 [^] 按鈕出現。 選取形箭號按鈕 [^] 展開群組。

    (鍵盤:若要展開或摺疊選取的群組,請選取 [無效] 鍵 [+] 或 [減去] 鍵 [-]。

    若要展開或摺疊選取群組內的所有內容,請按住 SHIFT 鍵不放,同時按一下加號鍵 (+) 或減號鍵 (-)。

  • 若要展開所有群組,請開啟圖形的捷徑功能表。 選取 [群組], [全部展開]。

    注意事項注意事項
    如果展開所有群組產生一個無法使用的圖表或記憶體問題,這個命令無法使用。建議您只展開圖形設定為您想要的詳細資料層級。
  • 若要摺疊單一群組,請開啟節點的捷徑功能表。 選取 [群組], [摺疊]。

    -或-

    請將滑鼠指標置於群組的最上方,直到形箭號 [^] 按鈕外觀。 按一下形箭號按鈕(^)以摺疊群組。

  • 若要摺疊所有群組,請開啟圖形的捷徑功能表。 選取 [群組], [全部摺疊]。

查看命名空間、型別或成員的程式碼定義

開啟節點的捷徑功能表。 選取 [移至], [移至定義]。

-或-

按兩下節點。 為了展開群組,按兩下標題群組。

-或-

選取 節點。 請按 F12

例如:

  • 對於命名空間,在該命名空間中第一個字母順序類別的程式碼檔會開啟以顯示該類別的定義。

    注意事項注意事項
    當您在 Visual Basic .NET 命名空間上執行工作時,命名空間背後的程式碼檔不會開啟。當您在包含 Visual Basic .NET 命名空間的所選節點群組上執行此工作時,也會發生這個問題。若要解決這個問題,請手動巡覽到命名空間背後的程式碼檔,或省略您所選項目中的命名空間節點。
  • 對於類別或部分類別,該類別的程式碼檔會開啟以顯示該類別的定義。

  • 對於方法,母類別的程式碼檔會開啟以顯示該方法的定義。

尋找連結的來源或目標

如果連結太多,可以使用此方法輕鬆地查看特定連結的來源或目標。

  1. 在圖形工具列上,將圖形配置變更為樹狀配置或快速叢集 圖形工具列上的 [快速叢集] 按鈕 配置。

  2. 將滑鼠指標移動到位於連結上方或選取 連結。

    Visual Studio 會顯示兩個箭號和列出連結與其他連結細節的來源和目標的清單。

  3. 選擇您要遵循之方向的箭號按鈕。

    根據您選取的方向,來源或目標隨即顯示為已選取。

檢查參與彙總連結的項目和相依性

對於單一連結:

  1. 選取 連結。

  2. 將滑鼠指標位於連結上方。 當 Visual Studio 顯示具有加號 (+) 的兩個箭號中,選取加號 (+)。

    建立新圖形,請按住 [移位] 索引鍵,當在選取加號 [+]時。

    -或-

    開啟您所選項目的捷徑功能表。 選取 [顯示]、 [目前圖表中的參與連結] 或 [新增圖表中的參與連結]。

如果有多個連結:

  1. 選取 連結。

  2. 開啟您所選項目的捷徑功能表。 選取 [顯示]、 [目前圖表中的參與連結] 或 [新增圖表中的參與連結]。

Visual Studio 展開在連結的兩端的群組並只顯示參與此連結上的項目和相依性。

注意事項注意事項
當您檢視在部分群組中項目之間的相依性時,可能會看到下列行為:
  • 項目連結沒有餐與您的檢查項目會從圖形中消失,,即使這些連結仍然存在。

  • 假設您在檢查一個連結至某一部分群組中的一個項目,然後再檢查相同項目的一個不同連結。在第二次檢查期間,目標部分群組只顯示您第一次只檢查的項目。連結與目標項目不會參與您第一次的檢查而會參與第二次檢查但不會出現。

檢視群組中消失的項目,選取 [Refetch Children ][重新擷取子系圖示],顯示非所有群組中的成員出現在圖表上。 您也可以嘗試復原您的動作 (鍵盤:選取 [CTRL+Z。]) 並檢查新圖形的相依性。

檢查跨多重群組中節點的相依性

  1. 展開群組,以便您可以查看其所有子系。

  2. 選取您要查看的所有節點,包括其子系。

    在該群組周圍繪製矩形時,若要選取群組中的所有節點,請按住滑鼠左鍵不放。 若要選取圖形中的所有節點,請按下 CTRL+A

    圖形會在選取的節點之間顯示跨群組連結。

    提示提示
    若要隨時都顯示跨群組連結,請在圖形工具列上,開啟變更連結在圖形上的呈現方式清單[變更連結在圖形上的呈現方式] 按鈕。選取顯示所有跨群組連結

檢視節點或連結所參考的項目

注意事項注意事項
只有當圖形的 .dgml 檔案之節點或連結的 Reference 屬性已設定時才能這麼做。從節點或連結要加入項目的參考,請參閱 編輯和自訂相依性圖形

開啟節點的捷徑功能表。 選取 [移至] 和項目。

隱藏或顯示節點和連結

隱藏節點以防止它們參與配置演算法。 根據預設,跨群組連結是隱藏的。 跨群組連結是連接跨群組之節點的個別連結。 當群組摺疊起來時,圖形會將所有跨群組連結彙總成單一的群組間連結。 當您展開一個群組並選取群組內的節點時,跨群組連結會出現並在群組中並顯示相依性。

警告

在您要與使用 Visual Studio Premium 或 Visual Studio Professional的人分享使用 Visual Studio Ultimate 建立的圖表之前,請確保為取消隱藏所有您想分享給其他人的節點或跨群組連結。否則,使用者將無法對這些項目取消隱藏。

隱藏或顯示節點

若要

請執行這些步驟

隱藏選取的節點

  1. 選取您要隱藏的節點。

  2. 開啟選取的節點或是圖形的捷徑功能表。 選取 [選取], [隱藏選取的]。

隱藏未選取的節點

  1. 選取您想要保持可見的節點。

  2. 開啟選取的節點或是圖形的捷徑功能表。 選取 [選取], [隱藏未選取項目]。

顯示隱藏的節點

  • 要顯示在群組內的所有隱藏的節點,請確定群組先展開。 選取取消隱藏子系 解除隱藏子系圖示 在圖形的左上角.

  • 若要顯示所有隱藏的節點,開啟圖形的捷徑功能表。 選取 [選取], [全部解除隱藏]。

編輯 .dgml 檔案來隱藏節點

  1. 開啟圖形介面的捷徑功能表。 選取 [移至] 、 [DGML] 。

    Visual Studio 開啟圖形的 .dgml 檔案。

  2. 在 <Node/> 項目中,加入下列屬性以隱藏節點:

    Visibility="Hidden"

    例如:

    <Nodes>
       <Node Id="MyNode" Visibility="Hidden"/>
    </Nodes>

若要顯示或隱藏連結

若要

在圖形工具列上,開啟 [變更連結在圖形上的呈現方式] 清單或開啟圖表捷徑功能表。 選取

任何時候都顯示所有跨群組連結

顯示所有跨群組連結

這個隱藏了群組之間的彙總連結。

只顯示選取的節點的跨群組連結

顯示所選取節點上的跨群組連結

任何時候都隱藏跨群組連結

隱藏所有跨群組連結

隱藏所有連結 (或顯示所有連結)

隱藏所有連結

若要顯示所有連結,請再次選取 [隱藏所有連結] 以關閉此模式。

群組節點

若要

請執行這些步驟

將容器節點顯示為群組節點或葉節點

若要顯示容器節點為葉節點,請選取節點。 開啟您所選項目的捷徑功能表。 選取 [群組], [轉換為葉]。

若要顯示容器節點為群組節點,請選取節點。 開啟您所選項目的捷徑功能表。 選取 [群組], [轉換為群組]。

若要顯示所有葉節點為群組節點,開啟圖形的捷徑功能表。 選取 [群組], [開啟群組]。

若要顯示所有群組節點為葉節點,開啟圖形的捷徑功能表。 選取 [群組], [關閉群組]。

變更群組中的配置

  1. 選取群組。

    群組工具列開始出現。

    相依性圖形 - 群組工具列

  2. 開啟 [變更群組的配置樣式] 清單。 相依性圖形 - 群組工具列 - 配置 選取您要的配置。

    [清單檢視] 重新整理群組成員列成清單。 [圖形預設] 重設群組設定成圖表的預設配置。 如需其他選項,請參閱 將圖形配置變更。

將節點加入至群組

將節點拖曳至群組。

當您拖曳這個節點時, Visual Studio 會顯示運算式時您移動節點的運算式時。

您也可以將節點拖曳至群組之外。

增加一個節點至非群組節點。

您可以將任何節點轉換成群組。 拖曳節點到目標節點上。

群組中選取的節點

  1. 選取您要群組的節點。

    工具列開始出現於最後選取的節點上。

    相依性圖形工具列

  2. 在工具列上,選取 群組中選取的節點 圖形工具列 - 選取的群組.

    -或-

    開啟您所選項目的捷徑功能表。 選取 [群組], [加入母群組]。

  3. 開啟新的群組中的捷徑功能表。 選擇 [內容]。 在 [標籤] 屬性中重新命名群組。

群組節點具有特定分類或屬性

  1. 選取具有特定分類或屬性的節點。

  2. 開啟您所選項目的捷徑功能表。 選取 [群組], [加入母群組]。

  3. 開啟新的群組中的捷徑功能表。 選擇 [內容]。 在 [標籤] 屬性中重新命名群組。

根據節點的容器組成節點群組

  1. 在 [架構] 功能表上,選擇 [Windows], [架構總管]。

  2. 使用 [架構總管] 尋找和選取您要組成群組的所有節點。

    請參閱 使用架構總管尋找程式碼

  3. 在目前資料行的右側,選取摺疊的動作資料行加以展開。 (鍵盤:按 [索引標籤] 移動焦點,直到摺疊的動作資料行展開)。

    注意事項注意事項
    當您移動游標或是焦點在動作資料行最上方時,它將反白顯示,
  4. 選取動作資料行中的 [由下列包含]。 (鍵盤:按 [索引標籤] 移動焦點然後使用方向鍵,直到 [由下列包含] 關聯性已選取)。

  5. 從下一個資料行拖曳容器群組至圖形。

  6. 開啟圖形介面的捷徑功能表上,選取 [群組], [開啟群組]。

根據節點的屬性值組成節點群組

  1. 在磁碟中將圖形儲存為 .dgml 檔案。

  2. 在 [架構] 功能表上,選擇 [Windows], [架構總管]。

  3. 在 [架構總管] 中的 [檔案系統] 底下,選取 [選取檔案]。

  4. 在下一個資料行中,選擇您儲存的 .dgml 檔案。

  5. 使用 [架構總管] 尋找和選取您要組成群組的所有節點。

    請參閱 使用架構總管尋找程式碼

  6. 在目前資料行的右側,選取摺疊的動作資料行加以展開。 (鍵盤:按 [索引標籤] 移動焦點,直到摺疊的動作資料行展開)。

    注意事項注意事項
    當您將指標移至動作欄上方時,它就會反白顯示。
  7. 在動作資料行的 [群組] 底下,選取 [依屬性群組]。 (鍵盤:按 [索引標籤] 移動焦點然後使用方向鍵,直到 [依屬性群組] 命令已選取)。

  8. 在下一個資料行中,選取要用來組成群組的屬性。

    下一個資料行隨即出現並顯示可用的屬性值。

  9. 從下一個資料行拖曳屬性值群組至圖形。

  10. 開啟圖形介面的捷徑功能表。 選取 [群組], [開啟群組]。

移除群組

選取您想要移除的群組。 開啟您所選項目的捷徑功能表。 選取 [群組], [移除群組]。

從節點的父群組至上一層父群組 (如果沒有上一層父群組,則是群組外部) 移除節點

選取您要移動的節點。 開啟您所選項目的捷徑功能表。 選取 [群組], [從母系移除]。

您也可以編輯圖形的 .dgml 檔案,將節點組織成群組。

將節點轉換成群組或增加一個新群組

  1. 若要將節點轉換成群組,請開啟節點的捷徑功能表。 選取 [移至] 、 [DGML] 。

    Visual Studio 開啟圖形的 .dgml 檔案並反白顯示<Node/> 該節點的項目。

    -或-

    若要加入新群組:

    1. 隨即開啟圖形的空白區域的捷徑功能表。 選取 [移至] 、 [DGML] 。

    2. 在 <Nodes> 區段中,加入新的 <Node/> 項目。

  2. 在 <Node/> 項目中加入 Group 屬性,指定群組呈現為展開或摺疊的狀態。 例如:

    <Nodes>
       <Node Id="MyFirstGroup" Group="Expanded" />
       <Node Id="MySecondGroup" Group="Collapsed" />
    </Nodes>
    
  3. 在 <Links> 區段中,針對群組節點與其子節點之間的每一個關聯性,確定其中存在具有下列屬性的 <Link/> 項目:

    • Source 屬性,指定群組節點

    • Target 屬性,指定子節點

    • Category 屬性,指定群組節點與其子節點之間的 Contains 關聯性

    例如:

    <Links>
       <Link Category="Contains" Source="MyFirstNewGroup" Target="FirstGroupChildOne" />
       <Link Category ="Contains" Source="MyFirstNewGroup" Target="FirstGroupChildTwo" />
       <Link Category ="Contains" Source="MySecondNewGroup" Target="SecondGroupChildOne" />
       <Link Category="Contains" Source="MySecondNewGroup" Target="SecondGroupChildTwo" />
    </Links>
    

    如需 Category 屬性的詳細資訊,請參閱 指派分類給節點和連結編輯和自訂相依性圖形.

請參閱

概念

編輯和自訂相依性圖形

根據相依性圖形顯現程式碼相依性