1

我是 asp.net 网站开发人员的新手。在我的网站中,我使用 GridView 控件。在 GridView 行中,我放置了一些控件,例如 TextBox、DropDownList。

我可以在 GridView 中显示值。

但我的要求是,从 GridView 中存在的 TextBox 和 DropdownList 中获取值。

请帮助我前进..

谢谢你,再见..

4

4 回答 4

1

您需要按行访问它们。这篇代码项目文章详细解释了它。

TextBox tb = (TextBox)gridview1.Rows[0].FindControl("idOfTextBox");

上面的语句将在具有 ididOfTextBox和 type的网格的第一行中找到控件textbox

于 2013-01-02T06:57:13.173 回答
0

不仅是文本框,我们还可以从 gridview 中使用的所有控件获取值,这些控件通过使用 itemTemplate 或简单的 Bound field 放置。

您需要为每一行循环以获取值

foreach (GridViewRow row in grd_popup_details.Rows)
 {
 //get control values
 }

参考链接

于 2015-04-20T06:32:48.373 回答
0

您可以通过直接转换直接获取任何控件的任何值,而无需使用额外的文本框或下拉变量。

例子:

string val = ((TextBox)gridview1.Rows[0].FindControl("TextBox_ID")).Text;

希望能帮助到你 :)

于 2013-01-02T07:02:05.390 回答
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");
        }
}
于 2013-01-02T09:18:36.970 回答