我对此感到困惑。我尝试在DataGridView
上实施拖放操作。没有看到任何事件被触发,我尝试了一个带有文本框的简单表单。
我希望能够从Windows资源管理器中拖动文件或文件夹。
我错过了一些东西,因为这些事件从未发生过。我确实读到了关于DragEvents, Windows 7 and UIPI但我仍然无法解决这个问题。
我没有想法,我欢迎您的建议。
public Form1()
{
InitializeComponent();
this.AllowDrop = true;
textBox1.AllowDrop = true;
textBox1.DragEnter += new DragEventHandler(textBox1_DragEnter);
textBox1.DragDrop += new DragEventHandler(textBox1_DragDrop);
textBox1.DragOver += new DragEventHandler(textBox1_DragOver);
}
void textBox1_DragOver(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Move;
}
void textBox1_DragDrop(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Move;
}
void textBox1_DragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Move;
}
似乎这个应该工作。我在WP7 64上有一个干净的安装 - 包含所有更新,我没有运行病毒或恶意软件保护,或任何可能阻止这些事件发生的事情(据我所知)。
答案 0 :(得分:26)
我有同样的问题。这只是因为我从“以管理员身份运行”会话进行调试。我认为,自VISTA以来,有一种安全措施可以防止它下降到特权应用程序。
答案 1 :(得分:3)
我发现当我从Visual Studio以调试模式运行我的Forms应用程序时,它没有用。只有当我在VS之外运行它才能完美运行。据推测,这也与Windows 7(以及可能的更高版本)的安全性有关。