我是asp.net网站开发人员的新手。 在我的网站中,我使用GridView Control。在GridView行中,我放置了一些控件 文本框,DropDownList的。
我可以在GridView中显示值。
但我的要求是,从GridView和DropdownList中获取GridView中存在的值。
请帮我前进..
谢谢你, 再见..答案 0 :(得分:1)
您需要按行访问它们。此代码项目article详细解释了它。
TextBox tb = (TextBox)gridview1.Rows[0].FindControl("idOfTextBox");
上面的语句将在网格的第一行找到控件,其标识为idOfTextBox
,类型为textbox
。
答案 1 :(得分:0)
您可以直接投射直接获取任何控件的任何值,而无需使用额外的文本框或下拉变量。
示例:
string val = ((TextBox)gridview1.Rows[0].FindControl("TextBox_ID")).Text;
希望有所帮助:)
答案 2 :(得分:0)
Subscribe the RowDataBound event(this will be fired on each row available in gridview) of gridview and access like stated below,
protected void grdBillingdata_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//these controls are available inside gridview
HiddenField hdnNagetiveAmt = (HiddenField)e.Row.FindControl("hdnNagetiveAmt");
DropDownList ddlFeeType = (DropDownList)e.Row.FindControl("ddlFeeType");
TextBox txtFeeDesc = (TextBox)e.Row.FindControl("txtFeeDesc");
Button btnUpdate = (Button)e.Row.FindControl("btnUpdate");
}
}
答案 3 :(得分:0)
不仅是文本框,我们可以从使用itemTemplate放置的gridview内部使用的所有控件中获取值,或者只是一个Bound字段。
您需要为每一行循环以获取值
foreach (GridViewRow row in grd_popup_details.Rows)
{
//get control values
}