Winform TreeView 节点拖动
private void treeView_ItemDrag(object sender, ItemDragEventArgs e)
{
TreeNode dragNode = e.Item as TreeNode;
DoDragDrop(dragNode, DragDropEffects.Move);
}
private void treeView_DragEnter(object sender, DragEventArgs e)
{
e.Effect = e.AllowedEffect;
}
private void treeView_DragOver(object sender, DragEventArgs e)
{
TreeView tv = sender as TreeView;
tv.SelectedNode = tv.GetNodeAt(tv.PointToClient(new Point(e.X, e.Y)));
}
private void treeView_DragDrop(object sender, DragEventArgs e)
{
TreeView tv = sender as TreeView;
//取得被拖拽的节点
TreeNode dragNode = e.Data.GetData(typeof(TreeNode)) as TreeNode;
if (dragNode.Equals(tv.SelectedNode))
return; if (e.Effect == DragDropEffects.Move)
{
if (tv.SelectedNode == null)
{
tv.Nodes.Add(dragNode.Clone() as TreeNode);
dragNode.Remove();
return;
}
dragNode.Remove();
tv.SelectedNode.Nodes.Add(dragNode);
}
dragNode.Expand();
}
Winform TreeView 节点拖动的更多相关文章
- WinForm TreeView节点重绘,失去焦点的高亮显示
当用户焦点离开TreeView时,TreeView选中节点仍然高亮,但是颜色符合主题. 设置TreeView.HideSelection = False;可让选中节点保持高亮. 添加重绘事件 Tree ...
- winform TreeView 节点选择
public partial class Form1 : Form { public Form1() { InitializeComponent(); } string tag = "Tru ...
- c# winform TreeView NODE(节点) 重命名或获取节点修改后的值
在程序开发过程中我们经常用到treeview,还经常要修改节点的名字.节点名字修改后还想及时更新数据库.这时问题就来了,怎样获取NODE(节点)更新后的值呢?本人试了很多方法最终分析出treeview ...
- WINFORM中treeview 节点显示不全
在设置treeview节点时,出现如下显示不全的问题: 这个问题是由于我们在treeview任务中编辑节点时设置的字体大于我们在treeview属性中设置frot字体导致的. 所以只要将treevie ...
- winform Treeview控件使用
做角色菜单权限时用到treeview控件做树状显示菜单,简单总结了一下用法: 1.在winform窗体中拖入treeview控件,注意修改属性CheckBoxes属性为true,即在节点旁显示复选框 ...
- 关于WinForm TreeView的分享~
最近在写个测试demo的时候使用到WinForm TreeView,已经好久没接触了,有些生疏,所以还是记录一下遇到的一些问题. 1.如果动态绑定TreeView,这个功能一般会在数据量不确定,需要去 ...
- kendo ui的treeView节点点击事件修改和grid的配置的一点总结
kendo-ui的treeView节点(node)点击时 可以触发一个select的事件(event),并且连续点击多次相同节点,可以触发并且只能触发一次该事件. 可是需求上需要实现:每次点击相同的 ...
- TreeView节点拖拉操作1
TreeView节点拖拉操作1 //事先设置 TreeView1.DragMode= dmAutomatic; unit Unit1; interface uses Windows, Me ...
- 删除TreeView节点以及其子节点
//1.删除TreeView节点以及其子节点procedure TForm2.Button1Click(Sender: TObject);var TreeNode:TTreeNode;begin i ...
随机推荐
- 【php学习】数组操作
1.json字符串和数组之间的转换 json_decode($jsonStr) json字符串解码为php变量,若第二个参数默认为false,返回一个对象:若第二个参数设置true,则返回一 ...
- Jsoncpp 数组的使用
JsonCpp 是一个C++用来处理JSON 数据的开发包.下面讲一下怎么使用JsonCpp来序列化和反序列化Json对象,以实际代码为例子. 反序列化Json对象 比如一个Json对象的字符串序列如 ...
- 【No.1 Ionic】基础环境配置
Node 安装 git clone https://github.com/nodejs/node cd node ./configure make sudo make install node -v ...
- getComputedStyle()与currentStyle
getComputedStyle()与currentStyle计算元素样式 发表于 2011-10-27 由 admin “DOM2级样式”增强了document.defaultView,提供了get ...
- 阻止默认行为stopDefault
function stopDefault(e){ if(e && e.preventDefault) e.preventDefault(); else window.event.ret ...
- UltraEdit 标签(tab)不见的3个解决办法
UltraEdit 标签(tab)不见的3个解决办法 2010-11-08 09:19 1042人阅读 评论(0) 收藏 举报 工具c 方法1:点 视图->视图/列表(V)->打开文件标签 ...
- JS时间戳格式化日期时间 由于mysql数据库里面存储时间存的是时间戳,取出来之后,JS要格式化一下显示。
//时间戳转时间 function RiQi(sj) { var now = new Date(sj*1000); var year=now.getFullYear(); var month=now. ...
- UNION 查询中的排序
MSSQL 不允许在UNION查询中使用 ORDER BY 因此,当我们需要这种功能的时候,就需要绕一些弯路. 比如有一张学生表student 和教师表 teacher , 我们要查询所有的教师学生的 ...
- [Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement]错误解决
1.配置文件中将这行注销“secure-file-priv="C:/ProgramData/MySQL/MySQL Server 5.7/Uploads" ”:很多人添加权限依然不 ...
- 横屏EditText问题
给edittext 加属性android:imeOptions="flagNoExtractUi"