我有一个gridview 和sqldatasource。
我有一个 templatefield 列,在编辑项模板的文本框下方有一个简单的 label 。
有没有办法在 ROW UPDATING 事件中获取标签值?
我试过了:String llbl = ((Label)row.Cells[6].FindControl("label1")).Text;
嗯,我想不应该,cells[6]
因为我想得到标签。
谢谢
我认为这就是你要找的:
DataRow row = ((DataRowView)e.Row.DataItem).Row;
Label Mylabel = (Label)e.Row.FindControl("lblName");
编辑:
好的,那么试试这个:
GridViewRow row = MyGrid.Rows[e.RowIndex];
Label MyLabel = (Label)row.FindControl("MyLabel");
您可以使用 DataGridItemEventArgs 来查找标签。以下是 UpdateCommand 的代码:
private void grid_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Label label1 = (Label) e.Item.FindControl("label1");
}
这在 RowEditing 中对我有用:
Label label1 = (Label)GridViewID.Rows[e.NewEditIndex].FindControl("label1");
string label1val = label1.Text;
我相信这就是您想要的 RowUpdating:
Label label1 = (Label)GridViewID.Rows[e.RowIndex].FindControl("label1");
string label1val = label1.Text;
试试这个它总是对我有用
string lbl =((Label)gvEmployee.Rows[rowNo].Cells[0].FindControl("lblEmpid")).Text;