永发信息网

C#中如何实现数据拖动?

答案:3  悬赏:20  手机版
解决时间 2021-01-30 16:00
  • 提问者网友:咪咪
  • 2021-01-30 08:22
C#中如何实现数据拖动?
最佳答案
  • 五星知识达人网友:神的生死簿
  • 2021-01-30 09:05
首先要把窗口(控件也行 如panel)的AllowDrop属性改成true
然后重写窗口的OnDragEnter事件和OnDragDrop事件
//这个方法用于改变拖动时的鼠标样式 而且是必须有的
//否则不会触发OnDragDrop事件
//DataFormats.FileDrop表示拖动的类型是文件
protected override void OnDragEnter(DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
e.Effect = DragDropEffects.Copy;
}
else
{
e.Effect = DragDropEffects.None;
}
base.OnDragEnter(e);
}
protected override void OnDragDrop(DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
try
{
//第一个文件名 可以拖动多个文件
string fileName = ((String[])e.Data.GetData(DataFormats.FileDrop))[0];
//做其它事情....
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
DragDrop(this, e);
}
全部回答
  • 1楼网友:十鸦
  • 2021-01-30 10:46
能讲的具体一点吗?数据是个很庞大的概念,需要由外部环境来限定,最起码你要说清楚你的详细需求
  • 2楼网友:雪起风沙痕
  • 2021-01-30 09:14
你是网页还是应用程序啊 这个不一样的
网页的话 比较麻烦了 推荐用flash或者脚本了
应用程序的话 你可以查查drag和drop相关的资料 我也懒得贴代码了
=================
网页的话 flex或者JavaScript可以做到
我没有试过 你需要研究一下
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯