簡體   English   中英

Wpf- visual studio中的文本框如何折疊區域以及如何在文本編輯器中實現它?

[英]Wpf- How does the textbox in visual studio collapse regions and how can I implement this in my text editor?

我需要有人指出我正確的方向。

我需要做什么來折疊文本框中的文本區域?

我不需要知道如何允許用戶定義區域,只需知道在擁有該區域的索引和長度后如何折疊區域。 我也想像視覺工作室一樣,留下可以點擊以展開它們的折疊區域的視覺提醒。

Visual Studio使用自己的文本編輯器控件,而不是內置TextBox的WPF。 Visual Studio的內置文本編輯器具有許多與代碼編輯相關的高級功能,但不能單獨從Visual Studio中獲得。

WPF有許多開源和組件文本編輯器控件,包括區域折疊。 我建議您下載AvalonEdit或本答案中列出的任何文本編輯器控件以查看它是如何完成的,並重用您下載的控件或使用類似技術自行編輯。

大多數文本編輯器用於區域折疊的技術是在數據結構中包括“輪廓隱藏”標志,該標志為“是輪廓開始”標志,“輪廓結束”指針和“嵌套級別”添加的每一行維護。 。 通過保持這些最新並讓顯示模板通過繪制正確的圖標/按鈕和/或隱藏線來尊重它們,您可以非常輕松地獲得所需的效果。 顯然,這取決於您的文本編輯器的數據結構跟蹤和獨立顯示每一行,這需要額外的邏輯選擇,導航等未包含在WPF中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM