Winform窗体文本框实现拖拽获得目录或文件路径(C#)
2011-12-13 14:34
561 查看
经常会用到的东西呢。就先记录下来吧。
这代码其实可以写的更加精简。
不过既然都写出来了。就不重新修饰了。
#region AllowDrop
protected void SetAllTextBox()
{
foreach (Control txt in this.Controls)
{
if (txt is TextBox)
{
txt.AllowDrop = true;
txt.DragDrop += new DragEventHandler(txt_ObjDragDrop);
txt.DragEnter += new DragEventHandler(txt_ObjDragEnter);
}
else
{
if (txt.Controls.Count > 0)
{
SetAllTextBox(txt);
}
}
}
}
protected void SetAllTextBox(Control org)
{
foreach (Control txt in org.Controls)
{
if (txt is TextBox)
{
txt.AllowDrop = true;
txt.DragDrop += new DragEventHandler(txt_ObjDragDrop);
txt.DragEnter += new DragEventHandler(txt_ObjDragEnter);
}
else
{
if (txt.Controls.Count > 0)
{
SetAllTextBox(txt);
}
}
}
}
private void txt_ObjDragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Link;
}
private void txt_ObjDragDrop(object sender, DragEventArgs e)
{
((TextBox)sender).Text
= ((System.Array)e.Data.GetData(DataFormats.FileDrop)).GetValue(0).ToString();
}
#endregion
这代码其实可以写的更加精简。
不过既然都写出来了。就不重新修饰了。
#region AllowDrop
protected void SetAllTextBox()
{
foreach (Control txt in this.Controls)
{
if (txt is TextBox)
{
txt.AllowDrop = true;
txt.DragDrop += new DragEventHandler(txt_ObjDragDrop);
txt.DragEnter += new DragEventHandler(txt_ObjDragEnter);
}
else
{
if (txt.Controls.Count > 0)
{
SetAllTextBox(txt);
}
}
}
}
protected void SetAllTextBox(Control org)
{
foreach (Control txt in org.Controls)
{
if (txt is TextBox)
{
txt.AllowDrop = true;
txt.DragDrop += new DragEventHandler(txt_ObjDragDrop);
txt.DragEnter += new DragEventHandler(txt_ObjDragEnter);
}
else
{
if (txt.Controls.Count > 0)
{
SetAllTextBox(txt);
}
}
}
}
private void txt_ObjDragEnter(object sender, DragEventArgs e)
{
e.Effect = DragDropEffects.Link;
}
private void txt_ObjDragDrop(object sender, DragEventArgs e)
{
((TextBox)sender).Text
= ((System.Array)e.Data.GetData(DataFormats.FileDrop)).GetValue(0).ToString();
}
#endregion
相关文章推荐
- winform(C#)拖拽实现获得文件路径
- winform(C#)拖拽实现获得文件路径
- winform(C#)拖拽实现获得文件路径
- winform(C#)拖拽实现获得文件路径
- winform(C#)拖拽实现获得文件路径
- winform(C#)拖拽实现获得文件路径
- winform(C#)拖拽实现获得文件路径
- C#.net拖拽实现获得文件路径
- C#TextBox控件拖拽实现获得文件路径
- C#TextBox控件拖拽实现获得文件路径
- winform拖拽实现获得文件路径
- 【转】C#.net拖拽实现获得文件路径
- C#实现Ftp各种操作(上传,下载,删除文件,创建目录,删除目录,获得文件列表)
- C# WINFORM 强制让窗体获得焦点(可实现单次置顶或持续置顶)
- WinForm实现简单的拖拽文件到出题的功能(C#)(3)
- C# WinForm 选择目录路径和文件路径
- C#winform拖拽实现获得文件路径
- C# WinForm拖入文件到窗体,得到文件路径
- C# winForm 窗体:TextBox中显示文件的绝对路径,按钮背景颜色,richTextBox读取文本文件...
- C#之winform实现文件拖拽功能