加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

C#中WinForm应用程序中,将记事本拖到文本框上就把记事本的内容加载到文本框

(2012-08-31 21:00:38)
标签:

杂谈

分类: winForm

 

1.  vs2010创建一个Windows应用程序,同时把默认窗体修改为mainForm

2.  在界面上拖放一个文本框(TextBox

3.  双击窗体写窗体的加载事件,如下:

    private void mainForm_Load(object sender, EventArgs e)

    {

       this.textbox1.Multiline = true;//多行显示

       this.textbox1.AllowDrop = true;//允许用户拖拽数据到上面

       this.textbox1.ScrollBars = ScrollBars.Vertical;  //垂直上面显示滚动条     

    }

   

4.  textbox1DragEnter事件,如下:

    private void textBox1_DragEnter(object sender, DragEventArgs e)

    {

      

       //if (e.Data.GetDataPresent(DataFormats.FileDrop))

       //{

       //    string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);

       //    foreach (var file in files)

       //    {

       //        this.textBox1.AppendText(file);

       //    }

       //}

 

              

       if (e.Data.GetDataPresent(DataFormats.FileDrop))

       {

           string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);

           foreach (var file in files)

           {

              FileStream fs=new FileStream(file,FileMode.Open);

              StreamReader stream = new StreamReader(fs,Encoding.Default);

              string str = stream.ReadToEnd();

              this.textbox1.AppendText(str);

              stream.Close();

              fs.Close();             

           }

       }

    }

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有