我正在尝试创建一个具有richtextbox的WPF应用程序,该文本框接受来自用户的听写作为其输入。
我想将此代码用于SpeechRecognitionEngine类对象的SpeechRecognized事件。
private void speechRecognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
e.Result.Text = rtb.Text; //rtb is an object of the RichTextBox class
}
问题是RichTextBox类没有Text属性。有没有办法解决这个问题?提前致谢
答案 0 :(得分:0)
可以通过Document属性设置RichTextBox内容。您可以在MSDN
上找到更多详细信息以下是上面提供的链接示例。它为它创建一个新文档和一个段落,然后将文档分配给RichTextBox:
// Create a simple FlowDocument to serve as content.
FlowDocument flowDoc = new FlowDocument(new Paragraph(new Run("Simple FlowDocument")));
// Create an empty, default RichTextBox.
RichTextBox rtb = new RichTextBox();
// This call sets the contents of the RichTextBox to the specified FlowDocument.
rtb.Document = flowDoc;
// This call gets a FlowDocument representing the contents of the RichTextBox.
FlowDocument rtbContents = rtb.Document;
答案 1 :(得分:0)
试试这个:
private void speechRecognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
rtb.AppendText(e.Result.Text);
}
答案 2 :(得分:0)
这是一个记录良好的问题,并且有许多不同的解决方案。您可以在Stack Overflow上的RichTextBox (WPF) does not have string property “Text”问题的答案中找到大量可能的解决方案。
但是,我首选的方法是为Text
类声明RichTextBox
附加属性。请参阅MSDN上的Attached Properties Overview页面以了解有关附加属性的更多信息。您可以在C#门徒网站RichTextBox Text property where are you hiding?教程中的Text
课程的RichTextBox
附加属性中找到要使用的代码。