翻譯|其它|編輯:吳園園|2019-08-15 15:27:59.870|閱讀 335 次
概述:MindFusion.Diagramming for WinForms是一款能夠幫助你輕松創(chuàng)建流程圖和示意圖的.NET控件,可以自定義設(shè)計樣式和圖表框顏色。本文整理了用戶常見圖形布局的問題,以及其他問題,希望對您有所幫助。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
本文整理了用戶在使用MindFusion.Diagramming for WinForms經(jīng)常遇見的圖形布局的問題,以及其他問題,希望對您有所幫助~
點擊下載MindFusion.Diagramming for WinForms最新試用版
問:應(yīng)用TreeMapLayout后,我的樹形圖不完全可見,需要滾動。我可以讓它適合圖表的可見部分嗎?
答:樹形圖是在通過TreeMapLayout.LayoutArea屬性指定的區(qū)域內(nèi)生成的,或者是在圖中。如果未設(shè)置前者,則生成樹形圖。要在圖的可見部分內(nèi)排列節(jié)點,請將這些屬性中的任何一個設(shè)置為DiagramView.ClientToDoc(DiagramView.ClientRectangle)的結(jié)果。
問:您宣傳了兩種流程圖布局算法,我應(yīng)該使用哪種算法?
答: FlowchartLayout用于安排源代碼流程圖,其中代碼結(jié)構(gòu)(如循環(huán)和分支)可以相互嵌套。DecisionLayout專為包含決策和活動框的簡單流程圖而設(shè)計,每個節(jié)點最多有三個傳出鏈接。有關(guān)演示這兩種流程圖的示例,請參閱隨組件一起安裝的JavaScript和DecisionLayout示例項目。
問: FlowChart.NET是否有任何ASP.NET示例?我想將圖像生成集成到網(wǎng)頁中。
答:是的,有一些WebApp示例項目,可在Samples \ C#和Samples \ VB.NET文件夾中找到。該示例使用ASP.NET IMG控件并將其URL設(shè)置為動態(tài)生成圖表圖像的網(wǎng)頁。該網(wǎng)頁創(chuàng)建一個Diagram實例,加載一個圖表,并使用CreateImage方法將圖表導(dǎo)出到j(luò)peg。它還將響應(yīng)類型設(shè)置為image / jpeg,最后將圖像字節(jié)發(fā)送到瀏覽器。
問:我可以在服務(wù)器上使用MindFusion.Diagramming.dll,在客戶端上使用JDiagram applet來實現(xiàn)Web圖解解決方案嗎?
答:這就是我們的NetDiagram控件基本上做的事情。如果您希望自己實現(xiàn)它,請查看運行其中一個NetDiagram示例項目時生成的HTML和JavaScript,例如OrgBrowser。圖表數(shù)據(jù)在那里作為壓縮XML數(shù)據(jù)傳輸,使用.NET 2和Java提供的ZipStream類。
問:我可以使用WebApp示例方法創(chuàng)建實體關(guān)系圖嗎?
答:您可以使用WebApp示例中的TableNodes替換ShapeNodes以創(chuàng)建數(shù)據(jù)庫圖表。
問:使用WebApp方法在網(wǎng)頁上顯示圖表時,是否可以檢測展開/折疊按鈕點擊?
答:用于生成客戶端圖像映射的HtmlBuilder類具有ExpandBtnHyperlink屬性 - 使用它來處理服務(wù)器上的單擊(通過設(shè)置單擊節(jié)點的Expanded屬性)并將新圖表圖像返回給瀏覽器。
問:當(dāng)圖中有大背景形狀時,鏈接自動路由似乎不起作用。我怎樣才能解決這個問題?
答:將Obstacle屬性設(shè)置為false:
backgroundShape.Obstacle = false
問:是否可以防止自動路由不移動鏈接的原點或目標錨點。鏈接保持在用戶設(shè)置的錨點是至關(guān)重要的。
答:設(shè)置Anchoring to Keep:
Diagram.RoutingOptions.Anchoring = Keep
問:是否可以保留工作流程的更改歷史記錄并比較兩個版本?
答:如果您需要顯示同一文檔的兩個修訂版之間的差異,您可以實現(xiàn)更改日志并將差異顯示為在某些日期之間記錄的日志條目列表。
啟用Diagram.UndoManager屬性和UndoManager.UndoEnabled屬性并處理Diagram.ActionRecorded事件。在事件處理程序中,根據(jù)要記錄的命令創(chuàng)建日志條目。為每條記錄添加時間戳,以便您可以將文檔修訂日期與日志記錄時間進行比較。您可以使日志條目的集合可序列化并將其存儲在Diagram.Tag中。
另一種可能性是為每個DiagramItem.Tag分配唯一的ID。然后,您可以通過檢查兩個版本中是否存在具有某個ID的項目來比較文檔修訂,因此您知道是否已添加或刪除了一個DiagramItem。如果兩個文檔中都存在具有某些ID的項目,則可以進一步比較其屬性值,例如“文本”,“邊界”等。
問:如何將自定義數(shù)據(jù)與圖表中的項目(節(jié)點和鏈接)相關(guān)聯(lián)?
答:您可以創(chuàng)建自己的派生自ShapeNode的類,并為其添加ID屬性。要讓用戶創(chuàng)建您的類型的項目,請將view.Behavior設(shè)置為Custom,將view.CustomNodeType設(shè)置為typeof(your_node_class)。有關(guān)如何在FlowChart.NET中使用自定義類型的示例,請檢查IconNodes示例項目。
更簡單的解決方案是將id分配給項目的Tag屬性。另外一個“好處”是您可以使用Diagram的FindNode方法按標簽/ ID搜索節(jié)點。
問:在哪里可以獲得FlowChart.NET的液壓,氣動和電氣符號庫?
答:目前我們不提供此類符號。相反,您可以創(chuàng)建自己的Shape定義,其Image屬性設(shè)置為表示相應(yīng)符號的位圖或元文件。例如,檢查安裝在Flowchart.NET Samples文件夾中的符號庫示例“LogicGates”。
問答持續(xù)更新中>>>
MindFusion.Diagramming for WinForms現(xiàn)已加入在線訂購,點擊此處查看價格~
想要購買MindFusion.Diagramming for WinForms正版授權(quán)的朋友歡迎哦~
更多精彩內(nèi)容,敬請關(guān)注下方的微信公眾號,及時獲取產(chǎn)品最新資訊▼▼▼

本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自: