如何在asp.net的gridview中获取动态创建的文本框值 [英] how to get dynamically created textbox values in gridview in asp.net

查看:47
本文介绍了如何在asp.net的gridview中获取动态创建的文本框值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我在gridview中创建了特定的动态文本框。我需要获取那些文本框的id和文本框值。这里我在运行时输入文本框值,我想计算那些文本框值,请帮我这个...

  protected   void  creategridview()
{
int number = a;
DataTable dt = new DataTable();
dt.Columns.Add( SerialNumber typeof string ));
dt.Columns.Add( MIN typeof string ));
dt.Columns.Add( MAX typeof string ));
// dt.Columns.Add(UNIT,typeof(string));
dt.Columns.Add( Value typeof double ));
dt.Columns.Add( 结果 typeof string ));
for int i = 0 ; i < number; i ++)
{
dt.Rows.Add( null );
}
gridview1.DataSource = dt;
gridview1.DataBind();
}
受保护 void generaterow()
{
this .creategridview();
int numbers = a;
string serialno = b;
string newserialno = serialno.Substring( 0 ,serialno.Length - 1 );
int cellcnt = this .gridview1.Rows [ 0 ] Cells.Count;
int rowcount = this .gridview1.Rows.Count;
foreach (GridViewRow行 .gridview1.Rows)
{
Label label1 = new Label();
label1.ID = newserialno +(Convert.ToInt32(row.RowIndex + 1 ))。ToString();
label1.Text = newserialno +(Convert.ToInt32(row.RowIndex + 1 ))。ToString();
label1.Attributes.Add( runat server);
label1.CssClass = color;
row.Cells [ 0 ]。Controls.Add(label1);
// label2
Label label2 = new Label();
label2.ID = newserialno +(Convert.ToInt32(row.RowIndex + 1 ))。ToString();
label2.Text = min.ToString();
label2.Attributes.Add( runat server);
label2.CssClass = color;

row.Cells [ 1 ]。Controls.Add(label2);
// label3
Label label3 = new Label();
label3.ID = newserialno +(Convert.ToInt32(row.RowIndex + 1 ))。ToString();
label3.Text = max.ToString();
label3.Attributes.Add( runat server);
label3.CssClass = color;

row.Cells [ 2 ]。Controls.Add(label3);
// textbox1
TextBox textbox1 = new TextBox();
textbox1.ID = newserialno +(Convert.ToInt32(row.RowIndex + 1 ))。ToString();
textbox1.Attributes.Add( runat server);

// textbox1.AutoPostBack = true;
行。单元格[ 3 ]。Controls.Add(textbox1);
// label4
Label label4 = new Label();
label4.ID = newserialno +(Convert.ToInt32(row.RowIndex + 1 ))。ToString();

label4.Attributes.Add( runat server);
label4.CssClass = color;

row.Cells [ 4 ]。Controls.Add(label4);
}
}





这里我为gridview中的每一行创建了3个标签和1个文本框。我需要添加那些文本框值...

所以如何在文本框中获取值请告诉我...



谢谢...

解决方案

我想你不知道 GridView.FindControl [ ^ ]方法。

见例子,

http://www.aspdotnet-suresh.com/2014/11/aspnet-get-textbox-value-placed-in-gridview-using-csharp.html [ ^ ]

http://www.aspdotnet-suresh.com/2014/12/validate-textbox-controls-inside-gridview-using-javascript -in-aspnet.html [ ^ ]





string txt =((TextBox)GridViewFRM.Rows [i] .FindControl(TextBoxID))。Text;



-KR

hi,
i have creating specific no of dynamic textboxes in gridview. i need to get those textboxes id's and textbox values. here i'm entering textbox values at the runtime, i want to compute those text box values please help me with this...

protected void creategridview()
        {
            int number = a;
            DataTable dt = new DataTable();
            dt.Columns.Add("SerialNumber", typeof(string));
            dt.Columns.Add("MIN", typeof(string));
            dt.Columns.Add("MAX", typeof(string));
           // dt.Columns.Add("UNIT", typeof(string));
            dt.Columns.Add("Value", typeof(double));
            dt.Columns.Add("Result", typeof(string));
            for (int i = 0; i < number; i++)
            {
                dt.Rows.Add("", "", null);
            }
            gridview1.DataSource = dt;
            gridview1.DataBind();
        }
        protected void generaterow()
        {
            this.creategridview();
            int numbers = a;
            string serialno = b;
            string newserialno = serialno.Substring(0, serialno.Length - 1);
            int cellcnt = this.gridview1.Rows[0].Cells.Count;
            int rowcount = this.gridview1.Rows.Count;
                foreach (GridViewRow row in this.gridview1.Rows)
                {
                    Label label1 = new Label();
                    label1.ID = newserialno + (Convert.ToInt32(row.RowIndex + 1)).ToString();
                    label1.Text = newserialno + (Convert.ToInt32(row.RowIndex + 1)).ToString();
                    label1.Attributes.Add("runat", "server");
                    label1.CssClass = "color";
                    row.Cells[0].Controls.Add(label1);
                    //label2
                    Label label2 = new Label();
                    label2.ID = newserialno + (Convert.ToInt32(row.RowIndex + 1)).ToString();
                    label2.Text = min.ToString();
                    label2.Attributes.Add("runat", "server");
                    label2.CssClass = "color";
                    
                    row.Cells[1].Controls.Add(label2);
                    //label3
                    Label label3 = new Label();
                    label3.ID = newserialno + (Convert.ToInt32(row.RowIndex + 1)).ToString();
                    label3.Text = max.ToString();
                    label3.Attributes.Add("runat", "server");
                    label3.CssClass = "color";
                   
                    row.Cells[2].Controls.Add(label3);
                    //textbox1
                    TextBox textbox1 = new TextBox();
                    textbox1.ID = newserialno + (Convert.ToInt32(row.RowIndex + 1)).ToString();
                    textbox1.Attributes.Add("runat", "server");
                   
                   // textbox1.AutoPostBack = true;
                    row.Cells[3].Controls.Add(textbox1);
                    //label4
                    Label label4 = new Label();
                    label4.ID = newserialno + (Convert.ToInt32(row.RowIndex + 1)).ToString();
                   
                    label4.Attributes.Add("runat", "server");
                    label4.CssClass = "color";
                   
                    row.Cells[4].Controls.Add(label4);
                }
        }



here i created 3 labels and 1 textbox for each row in gridview. i need to add those textbox values...
so how do i get values in textboxes please tell me...

thank you...

解决方案

I think you don't know about GridView.FindControl[^] method.
See the examples,
http://www.aspdotnet-suresh.com/2014/11/aspnet-get-textbox-value-placed-in-gridview-using-csharp.html[^]
http://www.aspdotnet-suresh.com/2014/12/validate-textbox-controls-inside-gridview-using-javascript-in-aspnet.html[^]

and
string txt= ((TextBox)GridViewFRM.Rows[i].FindControl("TextBoxID")).Text;

-KR


这篇关于如何在asp.net的gridview中获取动态创建的文本框值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆