ListBox1上有三项a,b,c
ListBox2上有三项1,2,3
希望实现效果:从ListBox1上拖拽任意一项比如a到ListBox2上,不松开拖拽,如果拖拽到1上,则1显示被选中,拖拽到2上显示2选中,如果拖拽到2上松开鼠标,则弹出消息“a+2”,即可获得拖拽源的值和目的值现在拖拽可以实现,主要是不知道怎么做到拖拽到ListBox2上后如何根据鼠标响应哪一项被选中
望赐教,谢谢!

解决方案 »

  1.   

    在CLICK的事件里,有个e这个变量
      

  2.   

    To ccp5780199(观阴大湿),您说在ListBox2上的Click么?应为鼠标是从ListBox1拖拽过去的,之前鼠标已经按下,移动到ListBox2上时应该不会触发Click事件
      

  3.   

    那就不是CLICK事件了..
    就是按下可以实现拖拽的效果的那个事件里了
    可能是keydown吧?
    或者ListBox不是有个Selected什么的属性可以获取当前被选种的项?
      

  4.   

    不行啊,不一样,一个是 MouseEventArgs,一个是 DragEventArgs ,事件不一样
      

  5.   

    就是想获得从ListBox1拖拽过来的在ListBox2的哪个item上释放的~~谁有标准答案呢?
      

  6.   

    http://msdn2.microsoft.com/en-us/library/system.windows.forms.control.dodragdrop.aspx
      

  7.   

    也感谢lovefootball(蟑螂(生活就是扯淡--做人要放低姿态))提供的连接
    这个MSDN上的事件我是看过的,之前我实现了这个,但是当时我是弹出messagebox得到值,结果每次都死掉,这次参照msdn上的还是自己改了messagebox还是死掉,改到输出到textbox上就没事了通过仔细阅读,发现坐标得到后拖拽到哪个item上自动选中也实现了看来MSDN还是王道啊,答案都在里面,找不到得到就看自己了