Richtextbox Textchanged事件后触发事件
我在写一个词法分析器,我还希望我的文本编辑器能够更改关键字的颜色。输入时!像VS和...!但问题是RichTextBox的TextChanged事件在添加文本之前触发。Richtextbox Textchanged事件后触发事件
是否有任何预先定义的事件,在将文本添加到richTextBox后触发?如果不是,我怎么能创建一个,在输入文本后进行写入!
PS:我在写一个WPF项目!
private void rtxMain_TextChanged (object sender, TextChangedEventsArgs e) {
visual.getLastWord();
}
您可以使用keyUp事件,当键盘上的某个按键被释放时,它会触发。
RichTextBox r = new RichTextBox();
r.KeyUp += (s, e) =>
{
//your logic
};
您可能需要添加额外的逻辑,以避免像移按键,其心不是很难做到的,甚至不neccesary。
我不工作!当我跟踪我的应用程序时,keyUp事件发生在textChanged之前,因此它是无用的:| ! – 2014-11-04 08:48:07
你在做别的错误keyup事件在richtextbox中写入字母后触发,因为字母写在按键上,而键不能在它后面发生 – Vajura 2014-11-04 09:53:14
TextChnaged
事件在更改文本RichTextBox
后触发。下面是它的一个工作示例:
private void richtextBox1_TextChanged(object sender, TextChangedEventArgs e)
{
string text = new TextRange(richtextBox1.Document.ContentStart, richtextBox1.Document.ContentEnd).Text;
MessageBox.Show(text);
}
不管我键入到richtextBox1
,它显示我在MessageBox
值完全相同。这意味着它在更改Text
后触发事件。
那么为什么我输入的字符不会显示在文本框中,当我断点textchanged事件!当我放置一个breakPoint时,我输入的字符在getLastWord()执行后立即添加到richtextbox中!这就是为什么我要这样做 – 2014-11-04 08:59:03
@MohammadNej你在说什么,你不是说得很清楚。文本更改后触发TextChanged。 – Paparazzi 2014-11-04 13:30:36
更改“RichTextBox”文本后触发'TextChanged'事件。你如何得到它的文本? – Shaharyar 2014-11-04 08:44:17