GridView中数据行上下移动
public partial class Sys_Test1 : System.Web.UI.Page
{
     SqlConnection conn = new SqlConnection("Data Source=172.16.2.46;Initial Catalog=SR;User ID=sa");
     SqlDataAdapter adapter;
     SqlDataAdapter adapter1;
     DataSet ds = new DataSet();
     static List<string[]> ListTable = new List<string[]>();    //泛型
     protected void Page_Load(object sender, EventArgs e)
     {
         if (!Page.IsPostBack)
         {
             string SRNo = "BM2200809260019";     
             BindGridView(SRNo);       
         }
     }
     protected void BindGridView(string SRNo)
     {
         string sql = "select * from sr_getModuleSub(62) where vtype='03'";    //sr_getModuleSub()为一表值函数,从模板里取出数据
         adapter = new SqlDataAdapter(sql, conn);
         conn.Open();
         adapter.Fill(ds, "Module");
         GridView1.DataSource = ds.Tables[0].DefaultView;
         GridView1.DataBind();
         adapter1 = new SqlDataAdapter("select * from Sr_AppNode where vAppNo='" + SRNo + "'", conn);
         adapter1.Fill(ds, "AppNode");
         if (ds.Tables["AppNode"].Rows.Count != 0)
         {
             ListTable.Clear();
             for (int i = 0; i < ds.Tables["AppNode"].Rows.Count; i++)
             {
                 ListTable.Add(new string[] { ds.Tables["AppNode"].Rows[i]["vAppNo"].ToString(), ds.Tables["AppNode"].Rows[i]["inode"].ToString(), ds.Tables["AppNode"].Rows[i]["Iseq"].ToString(), ds.Tables["AppNode"].Rows[i]["vway"].ToString(), ds.Tables["AppNode"].Rows[i]["vGoway"].ToString(), ds.Tables["AppNode"].Rows[i]["vAuditNo"].ToString() });
             }                //添加数据到ListTable
             conn.Close();
         }
     }
     protected void BindGridView1(string SRNo)
     {
         string sql1 = "select * from sr_getAppNode('" + SRNo + "')";    //GridView中的节点修改后,不插入模板表,而是插入另一个表,再取出来
         adapter = new SqlDataAdapter(sql1, conn);
         conn.Open();
         adapter.Fill(ds);
         GridView1.DataSource = ds.Tables[0].DefaultView;
         GridView1.DataBind();
         conn.Close();
     }
     protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
     {
         int index = Convert.ToInt32(e.CommandArgument.ToString());
         string SRNo = "BM2200809260019";
         if (e.CommandName == "up")
         {
             if (index > 0)
             {
                 int nowid = index+1;
                 int upside = index;
                 for (int i = 0; i < ListTable.Count; i++)
                 {
                     if (Int32.Parse(ListTable[i][1].ToString()) == nowid)
                     {
                         ListTable[i][1] = "0";
                     }
                     else if (Int32.Parse(ListTable[i][1].ToString()) == index)
                     {
                         ListTable[i][1] = nowid.ToString();
                     }
                 }
                 for (int k = 0; k < ListTable.Count; k++)
                 {