2011-10-07 88 views
0

我有一个解析XML文件生成的文本框。如何将动态创建的asp文本框绑定到数据集?

TextBox tb = new TextBox; 
tb.ID = "MYDATA" 
Parent.Controls.Add(tb); 

然后我读取另一个数据的Xml文件来填充创建的文本框。我一直在尝试各种数据绑定,并将文本属性设置为数据集,但无法弄清楚。如果我在创建时设置文本属性,说:

MyDataSet.Tables[0].rows[0].["MYDATA"].ToString(); 

我得到一个错误,因为该数据集尚未创建,并不会是直到表单已创建。我是否在谈论这个错误?难道我不能指定填充文本框的数据来自数据集而没有创建它吗?

+1

您可以发布任何代码为您的UI你一个重新尝试添加这些控件等? – Purplegoldfish

回答

0

如果你填充在创建该TextBox相同的方法DataSet,你应该能够做到这一点:

tb.Text = MyDataSet.Tables[0].rows[0].["MYDATA"].ToString(); 

如果你在填充另一种方法DataSetTextBox后一直创建后,您可以使用FindControl方法搜索TextBox的父容器:和

TextBox tb = Panel1.FindControl("MYDATA") as TextBox; 
if (tb != null) 
{ 
    tb.Text = MyDataSet.Tables[0].rows[0].["MYDATA"].ToString(); 
} 
+0

有没有办法通过使用DataBinder.Eval方法在创建时设置Text属性? – Charles

+0

这取决于文本框是否包含在某种数据绑定控件中。 –

相关问题