|
这是一个用WINFORM中实现的用于拖放操作和文件复制小功能,现在共享出来!下面的代码没有打入注释,加入了一个ListBox,当文件拖放上来后,将内容显示在里面 private void lstFilePath_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) { e.Effect = DragDropEffects.Link; } else { e.Effect = DragDropEffects.None; } } private void lstFilePath_DragDrop(object sender, DragEventArgs e) { foreach (string strPath in (string[])e.Data.GetData(DataFormats.FileDrop)) { lstFilePath.Items.Add(strPath); } } 将整个窗体代码都复制下来,是一个复制的小程序,将拖放到LISTBOX里的文件复制到文本框里指定的位置,里面用到了一个外部控件,可以使用普通的button替换之 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; using System.Diagnostics; namespace PersonalDisk { public partial class frmDrag : Form { /**//// <summary> /// 获得/设置一个值,判断是否已经存在了一个类的实例 /// </summary> public static bool IsExist=false; public frmDrag() { InitializeComponent(); frmDrag.IsExist = true; } private void frmDrag_MouseDown(object sender, MouseEventArgs e) { //如果鼠标指针在标题栏范围内并且按下了鼠标左键,则触发移动标题栏方法 if (e.Button == MouseButtons.Left && e.Y <= 25) { Program.ReleaseCapture(); Program.SendMessage(this.Handle, Program.WM_SYSCOMMAND, Program.SC_MOVE + Program.HTCAPTION, 0); } } private void picControlClose_Click(object sender, EventArgs e) { frmDrag.IsExist = false; this.Close(); } private void picControlMin_Click(object sender, EventArgs e) { this.WindowState = FormWindowState.Minimized; } private void lstFilePath_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) { e.Effect = DragDropEffects.Link; } else { e.Effect = DragDropEffects.None; } } private void lstFilePath_DragDrop(object sender, DragEventArgs e) { foreach (string strPath in (string[])e.Data.GetData(DataFormats.FileDrop)) { lstFilePath.Items.Add(strPath); } } private void ExBtnClose_ClickEvent(object sender, EventArgs e) { picControlClose_Click(null,null); } private void ExBtnClear_ClickEvent(object sender, EventArgs e) { lstFilePath.Items.Clear(); } private void ExBtnDel_ClickEvent(object sender, EventArgs e) { lstFilePath.Items.RemoveAt(lstFilePath.SelectedIndex); } private void picControlBring_Click(object sender, EventArgs e) { if (this.TopMost == true) { this.TopMost = false; picControlBring.Image = PersonalDisk.Properties.Resources.btnBottom; } else { this.TopMost = true; picControlBring.Image = PersonalDisk.Properties.Resources.btnTop; } }
共2页: 上一页 1 [2] 下一页
| |