ListBox实现更改选中项目的顺序

来源:互联网 发布:查看windows重启日志 编辑:程序博客网 时间:2024/05/25 12:21

窗体很简单 我主要是要做一下功能;简单的实现了下,没有做比较严谨的规划和按钮限制考虑, 有兴趣的朋友可以改进功能,大体上就下面的这样的个窗体

代码如下:

 

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 WindowsFormsApplication1
{
    
public partial class Form1 : Form
    
{
        
public Form1()
        
{
            InitializeComponent();
        }

        
private void btntop_Click(object sender, EventArgs e)
        
{
            
for (int i = this.listBox1.SelectedIndex; i >0 ; i--)
            
{
                
string aa = listBox1.SelectedItem.ToString();
                
string uptest = this.listBox1.Items[i - 1].ToString();
                
//把当前选择行的值与上一行互换 并将选择索引减1
                listBox1.Items[i - 1= aa;
                listBox1.Items[i] 
= uptest;
                listBox1.SelectedIndex 
= i - 1;
            }

        }


        
private void btnUP_Click(object sender, EventArgs e)
        
{
            
int i = this.listBox1.SelectedIndex;
            
if (i > 0)
            
{
                
string aa = listBox1.SelectedItem.ToString();
                
string uptest = this.listBox1.Items[i - 1].ToString();
                
//把当前选择行的值与上一行互换 并将选择索引减1
                listBox1.Items[i - 1= aa;      
                listBox1.Items[i] 
= uptest; 
                listBox1.SelectedIndex 
= i - 1;
            }

            
else
            
{
                
//button2.Enabled = false;
            }


        }


        
private void btnDown_Click(object sender, EventArgs e)
        
{
             
int i = this.listBox1.SelectedIndex;
             
if (i < listBox1.Items.Count-1)
             
{
                 
string aa = listBox1.SelectedItem.ToString();
                 
string uptest = this.listBox1.Items[i + 1].ToString();
                 
//把当前选择行的值与下一行互换 并将选择索引加1
                 listBox1.Items[i + 1= aa;     
                 listBox1.Items[i] 
= uptest;
                 listBox1.SelectedIndex 
= i + 1;
             }

        }


        
private void btnBottom_Click(object sender, EventArgs e)
        
{
            
            
int j = this.listBox1.Items.Count - 1;
            
for (int i = this.listBox1.SelectedIndex; i < j;i++ )
            
{
                
string aa = listBox1.SelectedItem.ToString();
                
string uptest = this.listBox1.Items[i + 1].ToString();
                
//把当前选择行的值与下一行互换 并将选择索引加1
                listBox1.Items[i + 1= aa;
                listBox1.Items[i] 
= uptest;
                listBox1.SelectedIndex 
= i + 1;
            }

        }

    }

}

原创粉丝点击