Asp.net 如何将数据集的一列值动态绑定到文本框?

Asp.net 如何将数据集的一列值动态绑定到文本框?,asp.net,sql-server-2008,Asp.net,Sql Server 2008,在数据集中我有4列。在按钮单击中,我必须在文本框中显示整个一栏值 动态地。就像我们看到FB注释时一样,所有注释都将动态显示在文本框中。 请帮帮我 我对SW更感兴趣。> ds = l2.messageshow(); //drag the data into ds Convert.ToInt32(ds); int linenum = 0; foreach (int x in ds) { } 当我使用上述代码时,出现以下错误: foreach语句无法对dataset类型的变量进行操作 请按照

数据集中
我有4列。在按钮单击中,我必须在文本框中显示整个一栏值 动态地。就像我们看到
FB
注释时一样,所有注释都将动态显示在
文本框中。
请帮帮我

我对SW更感兴趣。>

ds = l2.messageshow(); //drag the data into ds

Convert.ToInt32(ds);
int linenum = 0;
foreach (int x in ds)
{   
}
当我使用上述代码时,出现以下错误:

foreach语句无法对dataset类型的变量进行操作


请按照下面的代码进行尝试

ds=l2.messageshow();//drag the data into ds
Convert.ToInt32(ds);
int linenum = 0;
foreach (DataRow row in ds.Tables[0].Rows) //Change Here
{   
     //Your code
}
您不能将整个
数据集
转换为
int
以使行号使用
DataRow
逐行获取
数据集
的数据

编辑:

如果您只想从
数据集中
一列在
文本框中显示它,请使用下面的代码

if(ds.Tables[0].Rows.Count>0)
  {
    txtBox.Text=ds.Tables[0].Rows[0]["ColumnName"].ToString();
  }
我假设您的
数据集
只有一个表和一行


如果要在
文本框中动态显示整个列,可以动态创建文本框并为其分配数据集值,请尝试以下代码:

ds=l2.messageshow();//drag the data into ds

int linenum = ds.Tables[0].Rows.Count;

TextBox[] textbox= new TextBox[linenum]; //Modified line

for (int i = 0; i < linenum; i++)
{
  textbox[i] = new TextBox();
  textbox[i].ID = "textbox[" + i + "]";
  PlaceHolder1.Controls.Add(textbox[i]);
  textbox[i].Text=ds.Tables[0].Rows[i]["ColumnName"].ToString();
}
ds=l2.messageshow()//将数据拖到ds中
int linenum=ds.Tables[0].Rows.Count;
TextBox[]TextBox=新的TextBox[linenum]//修正线
对于(int i=0;i

请记住,动态控件在回发后将丢失以保留它请遵循此示例或此示例

据我所知,您的要求是希望在文本框中动态显示整个列行

假设您不知道数据集将有多少行。那么,如何动态创建与数据集行数相等的文本框呢

让我们有一个包含一个文本框的用户控件

实施步骤:

  • 计算数据集的行数
  • 将控件绑定到循环中的面板或容器,循环的迭代计数等于数据集行
  • 在每次迭代中,在控件停靠在控件容器中之前,获取列值并将其分配给文本框
代码:


如果问题在提供的解决方案中仍然存在,请发表意见。

但在这里,我只想显示一列值以及如何将其绑定到文本框dynamicallysir,我想显示整个一列,如消息1)嗨2)你3)我在钦奈过得怎么样像这样我想在文本框中显示整个列,以便你作出响应。但它显示此错误bhayya error 11无法隐式地将类型“System.Web.UI.WebControls.TextBox[]”转换为“System.Web.UI.WebControls.TextBox”修改
TextBox=new TextBox[linenum]
as
TextBox[]TextBox=新的TextBox[linenum]非常感谢bayya。它起作用了。非常感谢,因为我问了这么多次,但你没有停止回答。thakyou非常感谢。我的意思是这样我可以用它吗?我不知道怎么用它。
 foreach(var row in DataSet.Tables[0].Rows)
 {
  UserControl objCtrl = new UserControl();
  objCtrl.Controls["Your TextBox Id Here"].Text = row["ColumnName"].ToString();
  Panel.Controls.Add(objCtrl);
 }