代码之家  ›  专栏  ›  技术社区  ›  stiank81

如何在WPF文本框中模拟粘贴?

  •  1
  • stiank81  · 技术社区  · 14 年前

    我的WPF应用程序中有一个文本框,我已将粘贴事件添加到使用:

    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();
    }
    
    2 回复  |  直到 14 年前
        1
  •  4
  •   Arcturus    14 年前

    调用applicationcommand Paste :

    ApplicationCommands.Paste.Execute(this, pastedText)
    

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

        2
  •  1
  •   Winston Smith    14 年前

    你可以通过思考来做到。您需要找到私有委托字段,然后调用它。

    How to: Hook Up a Delegate Using Reflection .