要求:
1)只能拖放office文件(excel,word)、rar。
2)拖放到textbox后,在textbox显示文件名,路径并将文件保存到数据库。

解决方案 »

  1.   

    搂主需要响应文本框的dragdrop事件
      

  2.   

    需要响应文本框的dragdrop事件...
      

  3.   

    我写一下代码    public partial class Form2 : Form
        {
            public Form2()
            {
                InitializeComponent();            this.textBox1.Multiline = true;
                //文本框允许拖放操作
                this.textBox1.AllowDrop = true;            //在完成拖放操作时发生
                this.textBox1.DragDrop+=new DragEventHandler(textBox1_DragDrop);
                //在将文件拖入文本框的边界时发生
                this.textBox1.DragEnter+=new DragEventHandler(textBox1_DragEnter);
            }        protected void textBox1_DragEnter(object sender, System.Windows.Forms.DragEventArgs e)
            {
                IDataObject dataObject = e.Data;            //是文件拖放
                if (dataObject.GetDataPresent(DataFormats.FileDrop))
                {
                    e.Effect = DragDropEffects.Copy;
                }
            }        protected void textBox1_DragDrop(object sender, System.Windows.Forms.DragEventArgs e)
            {
                
                IDataObject dataObject = e.Data;            if (dataObject == null) return;            if (dataObject.GetDataPresent(DataFormats.FileDrop))
                {
                    ////拖放的文件,可以多个
                    string[] files = (string[])dataObject.GetData(DataFormats.FileDrop);                foreach (string file in files)
                    {
                        System.IO.FileInfo fi = new System.IO.FileInfo(file);
                        //接收的文件类型
                        if (fi.Extension == ".doc" || fi.Extension == ".xsl" || fi.Extension == ".rar")
                        {
                            this.textBox1.Text += "文件名:" + fi.Name + "\t路径:" + fi.Directory + "\r\n";
                        }
                    }            }
            }    }
      

  4.   

    拖放显示都好办,问题是你要将文件的内容存来数据库?还是只把文件名和路径?
    excel,rar,word内容全存数据库后你怎么处理呢?假如以后取出来呢?