如何使用CSharp在动态创建Lable和文本框(这里动态创建TextBoxes) [英] How to create Lables and Textboxes Dynamically in ASP.NET Using CSharp(Here Dynamically creating TextBoxes)

查看:130
本文介绍了如何使用CSharp在动态创建Lable和文本框(这里动态创建TextBoxes)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的所有人,



在此代码中动态创建表格中的文本框。

如何在TextBox的左侧创建Lables。动态地

如何在SQL数据库表中存储值。



  private   int  numOfRows =  0 ; 
private int numOfColumns = 0 ;
这是代码块 生成带有TextBoxes的表。

private void GenerateTable( int colsCount, int rowsCount){


Table table = 表();
table.ID = Table1;
Page.Form.Controls.Add(table);


for int i = 0 ; i < rowsCount; i ++){
TableRow row = TableRow();
for int j = 0 ; j < colsCount; j ++){
TableCell cell = new TableCell() ;
TextBox tb = new TextBox();

tb.ID = TextBoxRow _ + i + Col _ + j;

cell.Controls.Add(tb);

row.Cells.Add(cell);
}


table.Rows.Add(row);
}
}


受保护 void Page_Load( object sender,EventArgs e){

GenerateTable(numOfColumns,numOfRows);
}


受保护 void Button1_Click(< span class =code-keyword> object sender,EventArgs e){

if int .TryParse(TextBox1.Text.Trim(), out numOfColumns)&& int .TryParse(TextBox2.Text.Trim(), out numOfRows))
{

GenerateTable( numOfColumns,numOfRows);


ViewState [ cols] = numOfColumns;
ViewState [ rows] = numOfRows;
}
else
{
Response.Write( 值不是数字!);
}
}


受保护 void Button2_Click( object sender,EventArgs e){

if (ViewState [ cols]!= null && ViewState [ rows]!= null
{

表table =(表)Page.FindControl( 表1);
if (table!= null
{
s
GenerateTable( int .Parse(ViewState [ cols ]。ToString()), int .Parse(ViewState [ ]的ToString()));


for int i = 0 ; i < int .Parse(ViewState [ rows]。ToString()); i ++)
{
for int j = 0 ; j < int .Parse(ViewState [ cols]。ToString()); j ++)
{

if (Request.Form [ TextBoxRow _ + i + Col _ + j]!= string .Empty)
{
Response.Write(Request.Form [ TextBoxRow _ + i + Col _ + j] + < br />);
}
}
}
}
}
}

解决方案

在文本框之前,也创建一个标签!



类似于:

 TableCell单元格=  new  TableCell(); 
// 添加标签
标签lb = 标签();
lb.ID = LabelRow _ + i + Col _ + j;
cell.Controls.Add(lb);

// 添加文本框
TextBox tb = new TextBox();
tb.ID = TextBoxRow _ + i + Col _ + j;
cell.Controls.Add(tb);

row.Cells.Add(cell);


如何在数据库中保存这些数据???可以解释

Dear All,

In this code Dynamically Creating TextBoxes in table.
how to create Lables left side of TextBox. Dynamically
how to store values in SQL Database table.

private int numOfRows = 0;
private int numOfColumns = 0;
Here’s the code block for the generating the Tables with TextBoxes.

private void GenerateTable(int colsCount, int rowsCount){

        
        Table table = new Table();
        table.ID = "Table1";
        Page.Form.Controls.Add(table);

         
        for (int i = 0; i < rowsCount; i++){
            TableRow row = new TableRow();
            for (int j = 0; j < colsCount; j++){
                TableCell cell = new TableCell();
                TextBox tb = new TextBox();

                tb.ID = "TextBoxRow_" + i + "Col_" + j;
                
                cell.Controls.Add(tb);
                
                row.Cells.Add(cell);
            }

            
            table.Rows.Add(row);
        }
}


protected void Page_Load(object sender, EventArgs e){
         
         GenerateTable(numOfColumns, numOfRows);
}


protected void Button1_Click(object sender, EventArgs e){
        
        if (int.TryParse(TextBox1.Text.Trim(), out numOfColumns) && int.TryParse(TextBox2.Text.Trim(), out numOfRows))
        {
            
            GenerateTable(numOfColumns, numOfRows);

            
            ViewState["cols"] = numOfColumns;
            ViewState["rows"] = numOfRows;
        }
        else
        {
            Response.Write("Values are not numeric!");
        }
}


protected void Button2_Click(object sender, EventArgs e){
    
    if (ViewState["cols"] != null && ViewState["rows"] != null)
    {
        
        Table table = (Table)Page.FindControl("Table1"); 
        if (table != null)
        {
           s
            GenerateTable(int.Parse(ViewState["cols"].ToString()), int.Parse(ViewState["rows"].ToString()));

            
            for (int i = 0; i < int.Parse(ViewState["rows"].ToString()) ; i++)
            {
                for (int j = 0; j < int.Parse(ViewState["cols"].ToString()); j++)
                {
                    
                    if (Request.Form["TextBoxRow_" + i + "Col_" + j] != string.Empty)
                    {
                        Response.Write(Request.Form["TextBoxRow_" + i + "Col_" + j] + "<br />");
                    }
                }
            }
        }
    }
}

解决方案

Just before textbox, create a label too!

Something like:

TableCell cell = new TableCell();
// Add label
Label lb = new Label();
lb.ID = "LabelRow_" + i + "Col_" + j; 
cell.Controls.Add(lb);

// Add textbox
TextBox tb = new TextBox(); 
tb.ID = "TextBoxRow_" + i + "Col_" + j;                
cell.Controls.Add(tb);
   
row.Cells.Add(cell);


how to save this data in database ???can u explain


这篇关于如何使用CSharp在动态创建Lable和文本框(这里动态创建TextBoxes)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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