我有一个问题,RichTextBox
我想将文档的内容保存在文本文件中。为此,我使用下一个代码:
XAML
<RichTextBox Grid.Row="0" x:Name="myRichTextBox" AcceptsTab="True" Margin="20">
<FlowDocument>
<Paragraph>
<Run>Some Paragraph</Run>
</Paragraph>
</FlowDocument>
</RichTextBox>
Code
private void btnSaveToTxt_Click(object sender, RoutedEventArgs e)
{
string fileName = @"D:\testRichTextBox1Text.txt";
SaveToTextFile(fileName);
MessageBox.Show("Text File Saved");
}
public void SaveToTextFile(string fileName)
{
TextRange range;
FileStream fileStream;
range = new TextRange(myRichTextBox.Document.ContentStart,
myRichTextBox.Document.ContentEnd);
fileStream = new FileStream(fileName, FileMode.Create);
range.Save(fileStream, DataFormats.Text);
fileStream.Close();
}
这段代码没问题,它可以工作,但我将如何使用MVVM
. 对于这种方法,我需要 RichTextBox 的 x:Name="myRichTextBox" 属性。我正在考虑绑定一个ICommand
调用SaveToTextFile()
方法,但是如果没有 RichTextBox 的 Name 属性,它将无法工作。
有没有办法用 MVVM 做到这一点?谢谢!