zoukankan      html  css  js  c++  java
  • listbox拖动排序

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace WindowsFormsApplication4
    {
        public partial class Form1 : Form
        {
            int indexofsource;//拖动的起始索引
            int indexoftarget; //拖动的结束索引
            public Form1()
            {
                InitializeComponent();
            }

            private void listBox1_MouseDown(object sender, MouseEventArgs e)
            {
                indexofsource = ((ListBox)sender).IndexFromPoint(e.X, e.Y);
                if (indexofsource != ListBox.NoMatches)
                {
                    ((ListBox)sender).DoDragDrop(((ListBox)sender).Items[indexofsource].ToString(), DragDropEffects.All);
                }

            }

            private void listBox1_DragOver(object sender, DragEventArgs e)
            {
                 if (e.Data.GetDataPresent(typeof(System.String)) && ((ListBox)sender).Equals(listBox1))
                {
                    e.Effect = DragDropEffects.Move;
                }
                else
                    e.Effect = DragDropEffects.None;

            }

            private void listBox1_DragDrop(object sender, DragEventArgs e)
            {
                ListBox listbox = (ListBox)sender;
                indexoftarget = listbox.IndexFromPoint(listbox.PointToClient(new Point(e.X, e.Y)));
                if (indexoftarget != ListBox.NoMatches)
                {
                    string temp = listbox.Items[indexoftarget].ToString();
                    listbox.Items[indexoftarget] = listbox.Items[indexofsource];
                    listbox.Items[indexofsource] = temp;
                    listbox.SelectedIndex = indexoftarget;
                }

            }
        }
    }

  • 相关阅读:
    模拟城市:我是市长
    IOTA私有链简单搭建
    SOUL软件小结
    ubuntu 16.04 安装node.js 8.x
    Ubuntu下Hyperledger Fabric v0.6安装部署
    区块链关键术语与概念
    Windows Server 2019安装OpenSSH Server简明教程
    Windows10和Windows Server 2019支持OpenSSH
    TypeError: __init__() got an unexpected keyword argument 'serialized_options'
    无法从路径’NuGet.CommandLine.2.7.1.nupkg’读取包
  • 原文地址:https://www.cnblogs.com/swtool/p/3832410.html
Copyright © 2011-2022 走看看