zoukankan      html  css  js  c++  java
  • c# ListView 项拖动方法

            /// <summary>
            /// 当拖动某项时触发
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void listView1_ItemDrag( object sender, ItemDragEventArgs e )
            {
                listView1.DoDragDrop( e.Item, DragDropEffects.Move );
            }
    
            /// <summary>
            /// 鼠标拖动某项至该控件的区域
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void listView1_DragEnter( object sender, DragEventArgs e )
            {
                e.Effect = DragDropEffects.Move;
            }
    
            /// <summary>
            /// 拖动时拖着某项置于某行上方时
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void listView1_DragOver( object sender, DragEventArgs e )
            {
                Point ptScreen = new Point( e.X, e.Y );
                Point pt = listView1.PointToClient( ptScreen );
                ListViewItem item = listView1.GetItemAt( pt.X, pt.Y );
                if ( item != null )
                    item.Selected = true;
            }
    
            /// <summary>
            /// 结束拖动
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void listView1_DragDrop( object sender, DragEventArgs e )
            {
                ListViewItem draggedItem = (ListViewItem)e.Data.GetData( typeof( ListViewItem ) );
                Point ptScreen = new Point( e.X, e.Y );
                Point pt = listView1.PointToClient( ptScreen );
                ListViewItem TargetItem = listView1.GetItemAt( pt.X, pt.Y );//拖动的项将放置于该项之前   
                if ( null == TargetItem )
                    return;
    
                listView1.Items.Insert( TargetItem.Index, (ListViewItem)draggedItem.Clone() );
                listView1.Items.Remove( draggedItem );
            }
  • 相关阅读:
    汇编中的字符串操作指令
    Scoket需要注意的地方
    判断是否为json对象
    offsetTop,offsetWidth,offsetParent
    ASP.net中页面事件的先后顺序
    opengl32.lib、glu32.lib、 glaux.lib、OpenGL32.lib的意思。
    递归中,方法中的变量值被改变的问题。
    中国数字认证网
    JSON中for in的使用
    (网上转载)JavaScript 跑马灯
  • 原文地址:https://www.cnblogs.com/tyjsjl/p/2178456.html
Copyright © 2011-2022 走看看