我在xaml中定义了一个数据模板:
IObservable<char> sequence = Observable.Create<char>(o =>
{
string message = "hello world!";
return Scheduler.Default.Schedule<string>(message, TimeSpan.FromMilliseconds(250.0), (state, schedule) =>
{
if (!String.IsNullOrEmpty(state))
{
o.OnNext(state[0]);
schedule(state.Substring(1), TimeSpan.FromMilliseconds(250.0));
}
else
{
o.OnCompleted();
}
});
});
我需要向此添加ICSharpCode.AvalonEdit.TextEditor.TextArea.Caret.PositionChanged事件。我怎么能这样做?
答案 0 :(得分:-1)
你无法在你的xaml中访问它,你必须在你的代码中设置它。
你可以这样做:
AvalonTextEditorControl.TextArea.Caret.PositionChanged += new EventHandler(
(sender, args) => {
// do some stuff
}
);
或者使用单独的事件函数,当您喜欢它时:
AvalonTextEditorControl.TextArea.Caret.PositionChanged += TextEditorCaret_PositionChanged;
private void TextEditorCaret_PositionChanged(object sender, EventArgs e)
{
// do some stuff
}
<强>更新强>
如果您想在XAML中使用它,可能是因为您的DataTemplate。您必须自己实现这一点。我有点比你有两个选择: