Gridview获取列值 - 单击On按钮

时间:2014-05-01 12:05:09

标签: asp.net

我在asp.net应用程序中有一个gridview。所有数据都已填充。 在按钮单击(不在gridview事件中)我想获得所有特定的列值。 我更喜欢逐项获取。所以我尝试了以下方式。

String columnValue1=Gridview1.Rows[0].Cells[0].Text;
String columnValue2=Gridview1.Rows[1].Cells[0].Text;
String columnValue3=Gridview1.Rows[2].Cells[0].Text;

我的gridview代码是这样的:

DataTable dt = new DataTable(); 
DataRow dr = null; 
dt.Columns.Add(new DataColumn("RowNumber", typeof(string))); 
dt.Columns.Add(new DataColumn("Column1", typeof(string)));
dt.Columns.Add(new DataColumn("Column2", typeof(string))); 
dt.Columns.Add(new DataColumn("Column3", typeof(string))); 
dr = dt.NewRow(); dr["RowNumber"] = 1;
dr["Column1"] = string.Empty; 
dr["Column2"] = string.Empty;
dr["Column3"] = string.Empty; 
dt.Rows.Add(dr); //Store the DataTable in ViewState 
ViewState["CurrentTable"] = dt; 
Gridview1.DataSource = dt; 
Gridview1.DataBind();

当我在向控件添加数据后将Gridview数据绑定到datatable时,它会为控件返回空。任何人都可以建议我解决这个问题。

1 个答案:

答案 0 :(得分:0)

我解决了这个问题

如果Gridview列是标签,那么

    Label lb;
    for (int i = 0; i < Gridview1.Rows.Count; i++)
    {
        lb= Gridview1.Rows[0].FindControl("Column1") as Label;
        columnValue1 = lb.Text;

    }