我已将KeyDown,PreviewKeyDown事件(以及更多)添加到以编程方式创建的段落中:
Paragraph p = new Paragraph();
Run r = new Run("new Text here");
p.Inlines.Add(r);
p.KeyDown += new KeyEventHandler(p_KeyDown);
p.PreviewKeyDown += new KeyEventHandler(p_PreviewKeyDown);
p.PreviewTextInput += new TextCompositionEventHandler(p_PreviewTextInput);
p.TextInput += new TextCompositionEventHandler(p_TextInput);
myrtb.Document.Blocks.Add(p);
但是当我在RichTextBox中更改文本(“new text here”)时,它们都没有被触发。有谁知道我在这里做错了什么? 非常感谢!
答案 0 :(得分:0)
据我所知,RichTextBox不会将KeyDown事件路由到当前选定的Block / Paragraph,因此您必须处理RTB事件,并使用当前的CaretPosition获取当前的Paragraph。