我需要在我的应用程序中添加一个用户可以删除文件的位置,它们就像将文件拖到Windows上的文件夹时一样。在here中有一个程序具有我需要的功能,但它是使用Windows窗体编写的,我使用的是wpf。因为它具有我需要的功能,因此porgram很棒。让我列出这些功能:
我不想创建文件对话框,否则我将使用openFileDialog类。我需要在我的wpf应用程序上嵌入边框,用户可以在其中拖动和选择文件。他们也可以将文件拖到外面并从那里打开文件。
所以这些是我需要添加到我的wpf应用程序的4件事让我描述我为尝试解决每个方法所做的事情。
我试过看了很多不同的地方来获取从文件中提取图标所需的代码,它们看起来永远不会与桌面上的图标相同。我尝试过:this和this one also以及其他一些我现在都记不住的了。
注意这一步将是eassy我对其他功能更感兴趣
这个可能是最难的一个。我没有实现这个,但我一直在想,为了实现这个功能,我将不得不有另一个窗口。该窗口将包含一个Image。每当我将鼠标拖到一个图标上时,我将实例化此窗口,将我正在绘制的图像作为参数传递,它将关闭在上级onMouseUP上。我不知道如何跟踪我让鼠标移动的窗口,所以我不确定是否应该尝试实现这种技术
我不知道如何实现此功能。
那个是eassy。唯一困难的部分是,有时您可能会从单独的磁盘(如拇指驱动器)拖动文件,您必须有一个方法才能复制它。或者你可以从Windows开始菜单中拖动一个链接。
也许我可以使用对话框的功能。我不需要重新发明轮子。我对Windows窗体的了解不多,所以我很难在wpf上实现该代码。
答案 0 :(得分:0)
你想要的是重用Windows中的控件,从.NET中可以通过Windows API Code Pack
访问这些控件。查看代码包的Windows Shell部分,特别是Explorer Browser控件,它应该为您提供所需的所有功能。