拖放的ListView C# [英] Drag and drop listview C#
问题描述
嗨如何启用拖动事件处理函数时我双击列表视图?
这是我的列表视图
双击后得到 私人无效ListView1的(对象发件人,EventArgs五)
不过,我希望它是
私人无效的ListView(对象发件人,DragEventArgs E)
如何我这样做..?
我已经尝试了许多方法,如:
私人无效的Form_Load(对象发件人,EventArgs五)
{
//启用拖放进行这种形式的
//(这也可以适用于任何控件)
this.AllowDrop = TRUE;
//添加事件处理程序拖放放大器;拖放功能
this.DragEnter + =新DragEventHandler(Form_DragEnter);
this.DragDrop + =新DragEventHandler(Form_DragDrop);
}
您需要实施< STRONG>的dragenter 事件并设置DragEventArgs效应财产。在的dragenter 活动是允许的事情被投进控制。之后,在的DragDrop 鼠标按钮被释放时事件将触发。 。
下面是一个版本,将允许物体投进一个ListView:
私人无效Form1_Load的(对象发件人,EventArgs五)
{
listView1.AllowDrop = TRUE;
listView1.DragDrop + =新DragEventHandler(listView1_DragDrop);
listView1.DragEnter + =新DragEventHandler(listView1_DragEnter);
}
无效listView1_DragEnter(对象发件人,DragEventArgs E)
{
e.Effect = DragDropEffects.Copy;
}
无效listView1_DragDrop(对象发件人,DragEventArgs E)
{
listView1.Items.Add(e.Data.ToString());
}
毫无疑问,你的样本代码摘自:的http://msdn.microsoft.com/en-us/library/ system.windows.forms.control.allowdrop(v = vs.71)的.aspx
Hi how to I enable drag event handler when I double click on the listview?
This is what I get after double-clicking on the listview
private void listView1(object sender, EventArgs e)
However, I want it to be
private void listView(object sender,DragEventArgs e)
How to I do it..?
I have tried many way such as:
private void Form_Load(object sender, EventArgs e)
{
// Enable drag and drop for this form
// (this can also be applied to any controls)
this.AllowDrop = true;
// Add event handlers for the drag & drop functionality
this.DragEnter += new DragEventHandler(Form_DragEnter);
this.DragDrop += new DragEventHandler(Form_DragDrop);
}
You need to implement the DragEnter event and set the Effect property of the DragEventArgs. The DragEnter event is what allows things to be dropped into a control. After that the DragDrop event will fire when the mouse button is released.
Here is a version that will allow objects to be dropped into the a ListView:
private void Form1_Load(object sender, EventArgs e)
{
listView1.AllowDrop = true;
listView1.DragDrop += new DragEventHandler(listView1_DragDrop);
listView1.DragEnter += new DragEventHandler(listView1_DragEnter);
}
void listView1_DragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Copy;
}
void listView1_DragDrop(object sender, DragEventArgs e)
{
listView1.Items.Add(e.Data.ToString());
}
No doubt your sample code was taken from : http://msdn.microsoft.com/en-us/library/system.windows.forms.control.allowdrop(v=vs.71).aspx
这篇关于拖放的ListView C#的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!