C#将数据绑定到文本框
我试图将数据库行绑定到C#中的文本框,因此它是默认值(但文本框仍然可以编辑) 我目前遇到的问题是,文本框不允许我附加有错误的数据源(System.Web.UI.WebControls.TextBox不包含“DataSource”的定义…) 我能够成功地将数据源绑定到下拉列表中,但对文本框使用相同的代码是行不通的C#将数据绑定到文本框,c#,asp.net,sql,data-binding,web-controls,C#,Asp.net,Sql,Data Binding,Web Controls,我试图将数据库行绑定到C#中的文本框,因此它是默认值(但文本框仍然可以编辑) 我目前遇到的问题是,文本框不允许我附加有错误的数据源(System.Web.UI.WebControls.TextBox不包含“DataSource”的定义…) 我能够成功地将数据源绑定到下拉列表中,但对文本框使用相同的代码是行不通的 txtBox1.DataSource = "DataSource"; txtBox1.DataBind(); 原因是数据源包含多行。下拉列表可以支持这一
txtBox1.DataSource = "DataSource";
txtBox1.DataBind();
原因是
数据源
包含多行。下拉列表可以支持这一点,因为它将显示每行一个条目,但文本框不支持它。只有一个文本字段,它应该使用数据源中的哪一行
要设置
文本框的文本,请使用属性。您不能将数据源绑定到WebForms中的文本框。可以使用索引器将文本设置为数据行中的字段
`txtBox1.Text = datarow["SomeField"]`
如果要为文本框设置值,则需要执行以下操作:
textBox1.Text= "MyText";
然后用户可以更改该值,在回发时,您可以根据需要使用该值,用户将该值从数据源分配到文本框不是更容易吗?文本框无论如何只能表示1行/列数据。然后,您可以在保存时将文本框的值应用回数据源。如果没有更多关于您试图做什么/如何做的上下文,很难说如何最好地完成这一点。究竟什么是“数据源”,一个数据表?请添加标记WebControl(或其他内容),这样像我这样的人就不会抱希望了-这是关于Winforms:)
DataView dv = DataSource.DefaultView;
dv.RowFilter = "id=1"; // or whatever as per your need to make sure only 1 row is there
textBox1.DataBindings.Add("Text",dv,"id");