李晓亮的博客

导航

【转】GridView的RowCommand事件中取得行索引

 

代码
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        
if (e.Row.RowType == DataControlRowType.DataRow)//如果是为数据行
        {
            ImageButton imgbtnup 
= (ImageButton)e.Row.Cells[1].FindControl("btnMoveUp");//找控件
            imgbtnup.CommandArgument = e.Row.RowIndex.ToString();//设置与此BUTTON关联的命令参数
            imgbtnup.Visible = e.Row.RowIndex != 0
            ImageButton imgbtndown 
= (ImageButton)e.Row.Cells[2].FindControl("btnMoveDown");
            imgbtndown.CommandArgument 
= e.Row.RowIndex.ToString();
            imgbtndown.Visible 
= e.Row.RowIndex != ((DataSet)((GridView)sender).DataSource).Tables[0].Rows.Count - 1;
        }
    }

    
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        
if (e.CommandName == "MoveUp")
        {
            
int index = Convert.ToInt32(e.CommandArgument);//取的行索引
            DataKey key = this.GridView1.DataKeys[index];
            
string keyval = key.Value;//取得主键
        }
        
else if (e.CommandName == "MoveDown")
        {
            
int index = Convert.ToInt32(e.CommandArgument);
            DataKey key 
= this.GridView1.DataKeys[index];
            
string keyval = key.Value; 
        }
    }

 

 

posted on 2010-12-07 00:45  LeeXiaoLiang  阅读(203)  评论(0编辑  收藏  举报