Что такое код C #, эквивалентный следующему XAML, где у меня есть RichTextBox, и я выбрал Paragraph, и я хочу включить / отключить пробел в этом абзаце. В XAML я знаю, как включить, но мне нужно сделать это в коде.
<Paragraph xml:space=\"preserve\"> Tabbed Code</Paragraph>
Есть эквивалент, который я нашел, и он здесь,
void EnableWhiteSpace(Paragraph p, bool enable = true){
if(enable){
System.Windows.Markup.XmlAttributeProperties
.SetXmlSpace(this.Document, "preserve");
}
else{
System.Windows.Markup.XmlAttributeProperties
.SetXmlSpace(this.Document, "default");
}
}
Это все еще не работает !!! Я не получаю вкладки !! ...
Вот моя проблема, у меня есть RichTextBox, который используется для редактирования кода и который выделяет синтаксис. Все хорошо, за исключением того, что когда я звоню по следующему, я не вижу вкладок в моем коде.
TextRange tr = new TextRange(
myRichTextBox.Document.ContentStart,
myRichTextBox.Document.ContentEnd);
string text = tr.Text;
Текст, который я получаю, не содержит вкладок, поэтому я подумал, что включение пробелов в каждом абзаце перед выполнением диапазона текста может дать мне вкладки.
UPDATE
Я пробовал перемещаться по всем строкам (прогонам) в абзаце, ни один из них не содержит вкладок, я просто теряю все вкладки: (