.NET WinFrom中給文本框添加拖放事件的代碼
更新時(shí)間:2014年05月05日 16:03:15 作者:
有時(shí)候我們希望窗體上的文本框能接受鼠標(biāo)拖放事件,比如允許將文件直接拖放到文本框中以直接獲取到文件的本地路徑
在開(kāi)發(fā).NET WinForm程序時(shí),有時(shí)候我們希望窗體上的文本框能接受鼠標(biāo)拖放事件,比如允許將文件直接拖放到文本框中以直接獲取到文件的本地路徑,或者將選取的字符串直接拖放到文本框中等等。要實(shí)現(xiàn)這個(gè)功能其實(shí)很簡(jiǎn)單,代碼如下。
1. 將文本框的屬性AllowDrop設(shè)置成True
2. 給文本框添加DragEnter事件
private void textBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop, false))
{
e.Effect = DragDropEffects.All;
}
}
注意DataFormats下面有許多其它的屬性允許你將不同類型的數(shù)據(jù)拖放到文本框中。上面的代碼用于將文件的本地路徑拖放到文本框中。
3. 給文本框添加DragDrop事件以接收數(shù)據(jù)
private void textBox1_DragDrop(object sender, DragEventArgs e)
{
this.textBox1.Text = GetDragData((string[])e.Data.GetData(DataFormats.FileDrop));
}
你還可以給其它的控件添加鼠標(biāo)拖放事件,如ListBox等,方法類似。
1. 將文本框的屬性AllowDrop設(shè)置成True
2. 給文本框添加DragEnter事件
復(fù)制代碼 代碼如下:
private void textBox1_DragEnter(object sender, DragEventArgs e)
{
if (e.Data.GetDataPresent(DataFormats.FileDrop, false))
{
e.Effect = DragDropEffects.All;
}
}
注意DataFormats下面有許多其它的屬性允許你將不同類型的數(shù)據(jù)拖放到文本框中。上面的代碼用于將文件的本地路徑拖放到文本框中。
3. 給文本框添加DragDrop事件以接收數(shù)據(jù)
復(fù)制代碼 代碼如下:
private void textBox1_DragDrop(object sender, DragEventArgs e)
{
this.textBox1.Text = GetDragData((string[])e.Data.GetData(DataFormats.FileDrop));
}
你還可以給其它的控件添加鼠標(biāo)拖放事件,如ListBox等,方法類似。
您可能感興趣的文章:
- WinFrom中l(wèi)abel背景透明的實(shí)現(xiàn)方法
- C# winfrom 模擬ftp文件管理實(shí)現(xiàn)代碼
- winfrom 在業(yè)務(wù)層實(shí)現(xiàn)事務(wù)控制的小例子
- winfrom 打印表格 字符串的封裝實(shí)現(xiàn)代碼 附源碼下載
- C#之WinForm跨線程訪問(wèn)控件實(shí)例
- c#中多線程訪問(wèn)winform控件的若干問(wèn)題小結(jié)
- 深入分析C#中WinForm控件之Dock順序調(diào)整的詳解
- C#中讓控件全屏顯示的實(shí)現(xiàn)代碼(WinForm)
- WinForm實(shí)現(xiàn)按名稱遞歸查找控件的方法
- WinForm自定義控件應(yīng)用實(shí)例
- 簡(jiǎn)介Winform中創(chuàng)建用戶控件
- WinForm 自動(dòng)完成控件實(shí)例代碼簡(jiǎn)析
- C#的winform控件命名規(guī)范
相關(guān)文章
.NET Core系列之MemoryCache 緩存選項(xiàng)
這篇文章主要介紹了.NET Core系列之MemoryCache 緩存選項(xiàng),詳細(xì)的介紹一下 MSCache 中的 Options,由此來(lái)介紹一些 MSCache 中的內(nèi)部機(jī)制,感興趣的小伙伴們可以參考一下2018-08-08
一文帶你了解.Net基于Threading.Mutex實(shí)現(xiàn)互斥鎖
互斥鎖是一個(gè)互斥的同步對(duì)象,意味著同一時(shí)間有且僅有一個(gè)線程可以獲取它。這篇文章主要介紹了一文帶你了解.Net基于Threading.Mutex實(shí)現(xiàn)互斥鎖,感興趣的可以了解一下2021-06-06
Asp.net動(dòng)態(tài)生成html頁(yè)面的方法分享
這篇文章介紹了Asp.net動(dòng)態(tài)生成html頁(yè)面的方法,有需要的朋友可以參考一下2013-10-10
asp.net下生成99個(gè)不同的隨機(jī)數(shù)
asp.net下生成99個(gè)不同的隨機(jī)數(shù)...2007-04-04
ASP.net 動(dòng)態(tài)加載控件時(shí)一些問(wèn)題的總結(jié)
經(jīng)常見(jiàn)到有人說(shuō)在ASP.net中不要使用動(dòng)態(tài)控件,我想主要的原因在于使用動(dòng)態(tài)控件會(huì)帶來(lái)一些問(wèn)題,在做項(xiàng)目的過(guò)程中,我將由動(dòng)態(tài)加載控件引發(fā)的總是作了一個(gè)小小的總結(jié).2009-04-04
Asp.net core利用MediatR進(jìn)程內(nèi)發(fā)布/訂閱詳解
這篇文章主要給大家介紹了關(guān)于Asp.net core利用MediatR進(jìn)程內(nèi)發(fā)布/訂閱的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Asp.net core具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06
HttpRequest Get和Post調(diào)用其他頁(yè)面的方法
HttpRequest Get和Post調(diào)用其他頁(yè)面的方法,需要的朋友可以參考一下2013-03-03
.NET的動(dòng)態(tài)編譯與WS服務(wù)調(diào)用詳解
這篇文章介紹了.NET的動(dòng)態(tài)編譯與WS服務(wù)調(diào)用詳解,有需要的朋友可以參考一下,希望對(duì)你有所幫助2013-07-07

