如何从 ViewModel 向 RichTextBox 添加换行符
How to Add NewLine to RichTextBox from ViewModel
我正在尝试从我的视图模型向富文本框添加一个段落,但我总是失败。我的 viewModel 实现了 INotifyPropertyChanged 并且 viewModel 中 richtextbox 的值是一个字符串。例如:
private string richBox;
public string RichBox
{
get { return richBox; }
set { richBox = value; Changed("RichBox"); }
}
等等
当我尝试在 public myViewModel()
中添加段落时,例如:
FlowDocument doc = new FlowDocument();
Paragraph p = new Paragraph();
p1.Inlines.Add(new Run("..........."+"\n" + "-----------"));
doc.Blocks.Add(p);
this.richBox = new TextRange(doc.ContentStart, doc.ContentEnd).Text;
它失败了。即使我将新段落 p2
添加为 p2.Inlines.Add(new LineBreak());
,也会失败。
而不是得到:
..........
----------
我得到:..........----------
我尝试的一切似乎都失败了。
有人可以帮助我吗?
好吧,如果你只需要换行,你可以使用“\line”
将此附加到您的文本中
"\line"
我正在尝试从我的视图模型向富文本框添加一个段落,但我总是失败。我的 viewModel 实现了 INotifyPropertyChanged 并且 viewModel 中 richtextbox 的值是一个字符串。例如:
private string richBox;
public string RichBox
{
get { return richBox; }
set { richBox = value; Changed("RichBox"); }
}
等等
当我尝试在 public myViewModel()
中添加段落时,例如:
FlowDocument doc = new FlowDocument();
Paragraph p = new Paragraph();
p1.Inlines.Add(new Run("..........."+"\n" + "-----------"));
doc.Blocks.Add(p);
this.richBox = new TextRange(doc.ContentStart, doc.ContentEnd).Text;
它失败了。即使我将新段落 p2
添加为 p2.Inlines.Add(new LineBreak());
,也会失败。
而不是得到:
..........
----------
我得到:..........----------
我尝试的一切似乎都失败了。
有人可以帮助我吗?
好吧,如果你只需要换行,你可以使用“\line”
将此附加到您的文本中
"\line"