2013-10-18 52 views
0

我目前正在開發一個IDE和Im上的代碼,代碼摺疊現在的工作。 我想使用TreeView,因爲它有一個崩潰和展開屬性,但我不知道/不知道如何才能在RichTextBox上實現它。代碼摺疊代碼上的RichTextBox使用的TreeView

即使表示如果內的RichTextBox和TreeView相互作用將不勝感激的初始代碼。

like: 

{ 

} 

then RichTextBox will have a line indicating till where to collapse . 

非常感謝!

回答

0

如果你真的需要自己的代碼編輯器,你應該認真考慮採取Avalon Edit。它能夠重建Visual Studio編輯器。所以它具有您需要的所有功能(以及更多)。

我知道這是一個WPF組件,而不是WinForms的。但對host a WPF control within winforms來說很容易。因此,最好採用這種方法,試圖用富文本框交織樹視圖將永遠不會匹配你喜歡的東西(只要想想如果你使用不同的字體或者如何確定換行就可以找出文本行的像素大小) 。

+0

我也推薦一個 「真正的」 源代碼編輯器,一個Windows.Forms的人會ICSharpCode.TextEditor:http://www.codeproject.com/Articles/30936/Using-ICSharpCode-TextEditor –

+0

@Oliver, 感謝先生的幫助,但我現在有...我想要的是單獨的代碼摺疊 – Elegiac

+0

相同@PacMani我已經看到了這些,但仍然謝謝...我需要代碼摺疊先生的獨立代碼 – Elegiac

2

它似乎並不可行,包括一個TreeView 一個RichTextBox。根據我的經驗,在實時出價工具之上建立一些東西是非常困難的,並且不會產生理想的結果而不會產生很多怪癖。

我建議採取看看快速有色文本框:
http://www.codeproject.com/Articles/161871/Fast-Colored-TextBox-for-syntax-highlighting

或可能從頭開始建立一個類似的控制(如果你也從NIH苦),而不是試圖延長RTB。

+0

我已經看到了fastcolored @DeadDog ......問題itdoesnt支持一些「RichTextBox的」財產,我真的是最 – Elegiac

+1

哪些屬性是那些? – DeadDog