Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#:在WPF中拖放(Richtextbox)_Wpf_Drag And Drop_Richtextbox - Fatal编程技术网

C#:在WPF中拖放(Richtextbox)

C#:在WPF中拖放(Richtextbox),wpf,drag-and-drop,richtextbox,Wpf,Drag And Drop,Richtextbox,我想在WPF中实现一个拖放机制,但它不起作用。。。 有了Windows窗体,它就工作了 首先,我将AllowDrop设置为True。在windows窗体中,您已经可以将项目拖动到richtextbox中,光标将发生更改 与WPF。。。。什么也没发生 下一点:实现DragEnter和DragDrop方法。 我是按照在线手册上说的那样做的。(好的,我必须尝试更多的东西,因为DragDrop在WPF中不存在) 我认为所有关于拖放的教程都只适用于Windowsforms,不适用于WPF richtext

我想在WPF中实现一个拖放机制,但它不起作用。。。 有了Windows窗体,它就工作了

首先,我将AllowDrop设置为True。在windows窗体中,您已经可以将项目拖动到richtextbox中,光标将发生更改

与WPF。。。。什么也没发生

下一点:实现DragEnter和DragDrop方法。 我是按照在线手册上说的那样做的。(好的,我必须尝试更多的东西,因为DragDrop在WPF中不存在) 我认为所有关于拖放的教程都只适用于Windowsforms,不适用于WPF

richtextbox有问题吗?如果我把它改为“allowDrop”-什么都不会发生。光标仍然是不允许的符号

希望有人能帮忙:)

示例我阅读的教程中的代码:

richTextBox1.AllowDrop = true;

void richTextBox1_DragEnter(object sender, DragEventArgs e)
{
    e.Effect = DragDropEffects.None;

    if (e.Data.GetDataPresent(DataFormats.XXX))
    {
        e.Effect = DragDropEffects.Copy;
    }
}

void richTextBox1_DragDrop(object sender, DragEventArgs e)
{
    //intert in richtextbox ...
    richTextBox1.methodeXY();
}

我很好奇为什么我有一个小游戏,并最终让它工作。基本上,我是从绑定PreviewXXX事件开始的,如下所示:

AllowDrop="True" PreviewDragEnter="RichTextBox_DragEnter" PreviewDragOver="RichTextBox_DragEnter" PreviewDrop="RichTextBox_Drop"
即使如此,它们仍然不起作用。但答案是以提升权限的形式出现的。我通常使用管理员提升运行VS2010。因为我正在将一些文件从资源管理器拖放到我的
RichTextBox
,它实际上禁止了该操作,因为资源管理器以非提升用户模式运行。在非提升模式下运行VS2010修复了该问题。链接的文章确实提出了一些解决办法,但我还没有尝试过