在command时间中做一个判断
if(e.CommandName=="Select")
{
     int index=e.commandarguement//记得不清楚了  这个值就是行号
     gridview1.selectroe.cell[某一列].text//列的值
}

解决方案 »

  1.   

    如果你是想 取得 第一行第一列的值的话,就比较简单了。
    其实它可以取得 第
    <%@ Page Language="C#" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><script runat="server">
        // 计算数据,完全可以从数据看取得
        ICollection CreateDataSource()
        {
            System.Data.DataTable dt = new System.Data.DataTable();
            System.Data.DataRow dr;
            dt.Columns.Add(new System.Data.DataColumn("学生班级", typeof(System.String)));
            dt.Columns.Add(new System.Data.DataColumn("学生姓名", typeof(System.String)));
            dt.Columns.Add(new System.Data.DataColumn("语文", typeof(System.Decimal)));
            dt.Columns.Add(new System.Data.DataColumn("数学", typeof(System.Decimal)));
            dt.Columns.Add(new System.Data.DataColumn("英语", typeof(System.Decimal)));
            dt.Columns.Add(new System.Data.DataColumn("计算机", typeof(System.Decimal)));        for (int i = 0; i < 10; i++)
            {
                System.Random rd = new System.Random(Environment.TickCount * i); ;
                dr = dt.NewRow();
                dr[0] = "班级" + i.ToString();
                dr[1] = "破晓之阳" + i.ToString();
                dr[2] = System.Math.Round(rd.NextDouble() * 100, 2);
                dr[3] = System.Math.Round(rd.NextDouble() * 100, 2);
                dr[4] = System.Math.Round(rd.NextDouble() * 100, 2);
                dr[5] = System.Math.Round(rd.NextDouble() * 100, 2);
                dt.Rows.Add(dr);
            }
            System.Data.DataView dv = new System.Data.DataView(dt);
            return dv;
        }    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                DataGrid1.Attributes.Add("style", "table-layout:fixed");
                DataGrid1.DataSource = CreateDataSource();
                DataGrid1.DataBind();
            }    }    protected void Button1_Click(object sender, EventArgs e)
        {
            this.TextBox1.Text=DataGrid1.Items[0].Cells[0].Text;
            //当然你也可以直接从视图里面取得。
        }
    </script><html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>无标题页</title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:DataGrid ID="DataGrid1" runat="server">
            </asp:DataGrid>
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="取得第一行第一" /></div>
        </form>
    </body>
    </html>
      

  2.   

    首先回去当前行的selectindex然后就可以通过datagrid.item.cell[i].text来获取其值