(200分)c#如何允许用户直接拉入

来源:百度知道 编辑:UC知道 时间:2024/06/01 08:06:35
c#如何实现允许用户直接拉入

编译一个C#菜单管理器,
如何实现用户直接从桌面直接把软件等拉入编好的界面!(如直接把QQ直接啦进去,图标就在里面去了,在里面直接点QQ就能登陆了!)
不是说做的过程中,什么工具箱里啦进去一类的,是做完后的界面
有点像一个虚拟桌面。

答案满意的我再加100分
就是能直接把软件或则程序的快捷方式拉到我做的界面去!

这是一个类似于虚拟桌面的小程序,可以把windows的文件,文件夹等拖进窗体,窗体会生成相应的快捷方式,点击就可以系统默认方式打开。主要涉及的内容就是拖放操作的实现,还有其它的一些如获取系统图标,窗体自动隐藏(像QQ那样),读写配置文件app.config等,时间仓促(只做了一天),所以不太细致,还有一些特殊文件(我的电脑,回收站等)还不能添加,主要是为winform新手可以用来参考,下一版会加入特殊文件的添加,换肤,以及用户自定义配置等功能,敬请期待吧。

说明:这个程序只为新手参考使用,为方便查看,没有过多注重c#的面向对象概念

下面是主要部分的代码:

1.拖入操作实现,插入操作要注册两个事件

private void listView1_DragDrop(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop))
{
arraymain = (System.Array)e.Data.GetData(DataFormats.FileDrop);
begin();
}
}

private void listView1_DragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.All;
}
在dragenter事件中程序要确定允许拖入的文件类型,这里允许所有拖入。dragdrop是拖放操作完成时执行的,在这里可以把接收到的内容(保存在system.array里)添加到程序里,使用arraymain.GetValue(i).ToString()可以循环得到所有拖入的内容。

这里使用的是listvi