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");
編集:
OK、次にこれを試してください:
GridViewRow row = MyGrid.Rows[e.RowIndex];
Label MyLabel = (Label)row.FindControl("MyLabel");
これを試してみてください
string lbl =((Label)gvEmployee.Rows[rowNo].Cells[0].FindControl("lblEmpid")).Text;
これは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;
DataGridItemEventArgs を使用してラベルを見つけることができます。UpdateCommand のコードは次のとおりです。
private void grid_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Label label1 = (Label) e.Item.FindControl("label1");
}