Version3.0同時(shí)支持.NETFramework 和.NETCore。
綜合圖表
GoXam旨在通過照顧常見的圖表需求來節(jié)省您的項(xiàng)目數(shù)周的開發(fā)時(shí)間。功能包括內(nèi)置的節(jié)點(diǎn)和鏈接關(guān)系、數(shù)據(jù)綁定、子圖和組、可折疊和可展開的樹、概覽、布局和分層。
?
折疊和展開樹
大型圖的一種常用技術(shù)是允許用戶控制該樹部分的可見性。展開和折疊子樹內(nèi)置在 GoXam中,如下例所示,其中一個(gè)按鈕綁定到IsExpandedTree 屬性:
?
圖層
圖形對(duì)象可以放置在圖層中以定義它們的Z 順序。默認(rèn)情況下,DiagramPanel有9層,包括用于背景、默認(rèn)和前景節(jié)點(diǎn)和鏈接的層,以及用于輸入工具和裝飾(如選擇句柄)的層。
調(diào)色板控制
許多圖表應(yīng)用程序使用調(diào)色板來支持將新元素拖放到視圖中。GoXam 還提供了一種特殊的圖表,稱為調(diào)色板。它以矩形網(wǎng)格狀排列顯示許多節(jié)點(diǎn)。您可以使用與常規(guī)圖表不同的DataTemplate,以便為每個(gè)項(xiàng)目提供更小或更簡(jiǎn)單的外觀。
?
概覽控制
有時(shí)圖表太大,您只能以合理的縮放級(jí)別看到其中的一部分。對(duì)于此類應(yīng)用程序,我們提供了概覽控件。它顯示另一個(gè)圖表顯示的整個(gè)模型的縮略圖,并顯示該圖表的視口。用戶可以在概覽中單擊或拖動(dòng)以滾動(dòng)其他圖表的視口。
?
子圖/組
許多圖形類型,例如工作流或業(yè)務(wù)流程建模符號(hào)(BPMN),使用分組技術(shù)來組織圖表。GoXam 中支持組,包括支持定義層次結(jié)構(gòu)的數(shù)據(jù)綁定和定義組外觀的數(shù)據(jù)模板。
?
其他功能
剪切/復(fù)制/粘貼/撤消/重做
默認(rèn)情況下啟用標(biāo)準(zhǔn)剪貼板操作,但可能會(huì)在不需要的應(yīng)用程序中禁用。為了支持無限制和可自定義的撤消和重做,UndoManager跟蹤圖表模型的更改。更改按事務(wù)在邏輯上分組在一起。
縮放/滾動(dòng)/平移/選擇
GoXam支持滾動(dòng)和放大圖表。您可以通過設(shè)置 DiagramPanel 屬性以編程方式滾動(dòng)和放大或縮小。用戶可以使用滾動(dòng)條或 PanningTool 滾動(dòng),用戶可以使用Control-Mouse-Wheel 放大或縮小。GoXam 控件支持選擇,它們可以輕松地將數(shù)據(jù)綁定到當(dāng)前選定的節(jié)點(diǎn)。您可以通過提供自定義數(shù)據(jù)模板來自定義選擇句柄和工具句柄(例如,用于調(diào)整大小)。支持對(duì)圖表中的任何文本進(jìn)行就地文本編輯。只需單擊為文本編輯啟用的任何文本。
預(yù)定義的形狀和箭頭
GoXam預(yù)定義了超過 195種常用形狀,用于常用節(jié)點(diǎn)定義。節(jié)點(diǎn)圖形示例顯示了所有這些形狀。
箭頭示例顯示了65 種預(yù)定義的箭頭設(shè)計(jì)。
XML保存/恢復(fù)
GoXam不需要任何特定的格式或介質(zhì)來存儲(chǔ)圖表。在許多情況下,應(yīng)用程序已經(jīng)擁有自己的數(shù)據(jù)庫模式或二進(jìn)制文件格式或其他任何東西,因此良好的控制不應(yīng)強(qiáng)加任何存儲(chǔ)要求。
但是,如果您不介意使用XML 作為文檔格式,并且如果您沒有任何必須遵守的特定XML 模式,并且如果您使用我們預(yù)定義的模型數(shù)據(jù)類,我們確實(shí)可以輕松保存和以 XML 格式加載模型數(shù)據(jù)。(組織結(jié)構(gòu)圖編輯器、狀態(tài)圖、邏輯電路和流程圖示例都演示了XML 保存/恢復(fù)的使用。)
自動(dòng)布局
GoXam帶有用于自動(dòng)節(jié)點(diǎn)和鏈接定位的預(yù)定義布局。GoXam具有許多類型圖表的布局,包括圓形布局、樹和力導(dǎo)向布局以及分層有向圖等。
在GoXam 圖中,您可以通過在其根可視元素上設(shè)置Node.Location 附加屬性來定位節(jié)點(diǎn),或通過以編程方式設(shè)置 Node.Location屬性。用戶可以通過拖動(dòng)來重新定位節(jié)點(diǎn)。
然而,GoXam也有自動(dòng)定位節(jié)點(diǎn)的方法。DiagramLayout 類提供GridLayout、TreeLayout、ForceDirectedLayout和LayeredDigraphLayout。通過設(shè)置 Diagram.Layout屬性,可以將布局與整個(gè)圖表相關(guān)聯(lián)。布局也可以通過設(shè)置 Group.Layout附加屬性與Group 相關(guān)聯(lián)。(您可以在此處的分組示例中查看在單個(gè)圖表中運(yùn)行的不同布局示例。)
LayoutManager管理圖表中的布局,包括決定什么條件需要布局再次運(yùn)行。LayoutManager還支持動(dòng)畫,當(dāng)節(jié)點(diǎn)移動(dòng)到新位置時(shí),它允許平滑過渡。
CircularLayout
CircularLayout將節(jié)點(diǎn)排列成圓形或橢圓形。
GridLayout
GridLayout在Palette 控件中使用,但您可以在任何圖表中使用它。
ForceDirectedLayout
ForceDirectedLayout使用類似于物理力的力來推動(dòng)和拉動(dòng)節(jié)點(diǎn)。連桿被視為具有特定長度和剛度的彈簧。每個(gè)節(jié)點(diǎn)都具有排斥其他節(jié)點(diǎn)的電荷。
TreeLayout
TreeLayout有利于布置樹形結(jié)構(gòu)圖。它非常快,可以處理許多節(jié)點(diǎn)。提供多個(gè)選項(xiàng),讓您在有限的空間內(nèi)獲得所需的外觀和清晰度。
LayeredDigraphLayout
當(dāng)圖的節(jié)點(diǎn)可以自然地組織成層但結(jié)構(gòu)不是樹狀時(shí),您可以使用 LayeredDigraphLayout。這種布局可以處理進(jìn)入一個(gè)節(jié)點(diǎn)的多個(gè)鏈接以及創(chuàng)建循環(huán)的鏈接。
審核編輯:劉清
-
邏輯電路
+關(guān)注
關(guān)注
13文章
494瀏覽量
42656 -
XML
+關(guān)注
關(guān)注
0文章
188瀏覽量
33104 -
電荷
+關(guān)注
關(guān)注
1文章
634瀏覽量
36172 -
編輯器
+關(guān)注
關(guān)注
1文章
806瀏覽量
31210
原文標(biāo)題:?Nwoods:GoXamfor WPF適用于MicrosoftWPF 的功能豐富的圖表控件(上)
文章出處:【微信號(hào):哲想軟件,微信公眾號(hào):哲想軟件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論