1

我的 WPF 应用程序中有一个 TextBox,我添加了一个 Paste 事件来使用:

DataObject.AddPastingHandler(elm, new DataObjectPastingEventHandler(OnPaste));

现在我想从 C# 代码触发 OnPaste 事件。我怎样才能做到这一点?我尝试在控件上调用 Paste() 函数。文本粘贴在控件中,但未触发 OnPaste 事件..:

private static void Foo(TextBox textBox, string pastedText)
{
    Clipboard.SetData(DataFormats.Text, pastedText);
    textBox.Paste();
}
4

2 回答 2

5

调用 ApplicationCommand粘贴

ApplicationCommands.Paste.Execute(this, pastedText)

请注意,这在部分信任下不起作用!

于 2010-08-05T12:44:32.857 回答
1

你可以通过反射来做到这一点。您需要找到私有委托字段,然后调用它。

请参阅如何:使用反射连接委托

于 2010-08-05T09:06:00.717 回答