怎样将数据库数据绑定到TEXTBOX控件呀?在线急等!!!

gmajrtfp1 2003-08-25 10:13:46
小弟遇到一个总是:怎样将数据库数据绑定到TEXTBOX控件呀?请教一下
谢谢了
...全文
91 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wd_318 2003-08-26
  • 打赏
  • 举报
回复
给一段datagrid更新数据的函数,你的应该可以简化许多:
public void MyDataGrid_Update(Object sender, DataGridCommandEventArgs e)
{
String updateCmd = "UPDATE Authors SET au_id = @Id, au_lname = @LName, au_fname = @FName, phone = @Phone, "
+ "address = @Address, city = @City, state = @State, zip = @Zip, contract = @Contract where au_id = @Id";

SqlCommand myCommand = new SqlCommand(updateCmd, myConnection);

myCommand.Parameters.Add(new SqlParameter("@Id", SqlDbType.NVarChar, 11));
myCommand.Parameters.Add(new SqlParameter("@LName", SqlDbType.NVarChar, 40));
myCommand.Parameters.Add(new SqlParameter("@FName", SqlDbType.NVarChar, 20));
myCommand.Parameters.Add(new SqlParameter("@Phone", SqlDbType.NChar, 12));
myCommand.Parameters.Add(new SqlParameter("@Address", SqlDbType.NVarChar, 40));
myCommand.Parameters.Add(new SqlParameter("@City", SqlDbType.NVarChar, 20));
myCommand.Parameters.Add(new SqlParameter("@State", SqlDbType.NChar, 2));
myCommand.Parameters.Add(new SqlParameter("@Zip", SqlDbType.NChar, 5));
myCommand.Parameters.Add(new SqlParameter("@Contract", SqlDbType.NVarChar,1));

myCommand.Parameters["@Id"].Value = MyDataGrid.DataKeys[(int)e.Item.ItemIndex];

String[] cols = {"@Id","@LName","@FName","@Phone","@Address","@City","@State","@Zip","@Contract"};
Message.InnerHtml = "";

int numCols = e.Item.Cells.Count;
for (int i=2; i<numCols-1; i++) //skip first, second and last column
{
String colvalue =((System.Web.UI.WebControls.TextBox)
e.Item.Cells[i].Controls[0]).Text;

// check for invalid values
switch (cols[i-1])
{
case "@LName":
if ( !InputValidator.IsValidAnsiName(colvalue) )
{
Message.InnerHtml += "ERROR: Last Name - " + InputValidator.AnsiNameErrorString + "<br>";
}
break;
case "@FName":
if ( !InputValidator.IsValidAnsiName(colvalue) )
{
Message.InnerHtml += "ERROR: First Name - " + InputValidator.AnsiNameErrorString + "<br>";
}
break;
case "@Phone":
if ( !InputValidator.IsValidAnsiPhoneNumber(colvalue) )
{
Message.InnerHtml += "ERROR: Phone - " + InputValidator.AnsiPhoneErrorString + "<br>";
}
break;
case "@Address":
if ( !InputValidator.IsValidAnsiAddress(colvalue) )
{
Message.InnerHtml += "ERROR: Address - " + InputValidator.AnsiAddressErrorString + "<br>";
}
break;
case "@City":
if ( !InputValidator.IsValidAnsiCityOrState(colvalue) )
{
Message.InnerHtml += "ERROR: City - " + InputValidator.AnsiCityStateErrorString + "<br>";
}
break;
case "@State":
if ( !InputValidator.IsValidAnsiTwoCharacterState(colvalue) )
{
Message.InnerHtml += "ERROR: State - " + InputValidator.AnsiTwoCharacterStateErrorString + "<br>";
}
break;
case "@Zip":
if ( !InputValidator.IsValidFiveDigitZipCode(colvalue) )
{
Message.InnerHtml += "ERROR: Zip Code - " + InputValidator.AnsiBasicZipCodeErrorString + "<br>";
}
break;
}

// check for null values in required fields
if (i<6 && colvalue == "")
{
Message.InnerHtml += "ERROR: Null values not allowed for " + cols[i-1] + "<br>";
}

myCommand.Parameters[cols[i-1]].Value = colvalue;
}

if ( Message.InnerHtml != "" )
{
Message.Style["color"] = "red";
return;
}

//append last row, converting true/false values to 0/1
if (String.Compare(((System.Web.UI.WebControls.TextBox)
e.Item.Cells[numCols-1].Controls[0]).Text, "true", true, CultureInfo.InvariantCulture)==0)
myCommand.Parameters["@Contract"].Value = "1";
else
myCommand.Parameters["@Contract"].Value = "0";

myCommand.Connection.Open();

try
{
myCommand.ExecuteNonQuery();
Message.InnerHtml = "<b>Record Updated</b><br>" + updateCmd;
MyDataGrid.EditItemIndex = -1;
}
catch (SqlException exc)
{
if (exc.Number == 2627)
Message.InnerHtml = "ERROR: A record already exists with the same primary key";
else
Message.InnerHtml = "ERROR: Could not update record, please ensure the fields are correctly filled out";
Message.Style["color"] = "red";
}

myCommand.Connection.Close();

BindGrid();
}

gmajrtfp1 2003-08-25
  • 打赏
  • 举报
回复
那UPDATE的时候代码应该怎么写呀?能不能把BUTTON_CLICK里的代码写一个呀?
我上传的是三个数据bt.text,tp.text,lr.text
谢谢了
gj0001 2003-08-25
  • 打赏
  • 举报
回复
我没在意,写错了。
这句dr=cmd.ExecuteNonQuery() 应改为dr=cmd.ExecuteReader()
neodotnet 2003-08-25
  • 打赏
  • 举报
回复
最后一句是
conn.Close()
neodotnet 2003-08-25
  • 打赏
  • 举报
回复
dim cmd as SqlCommand=new SqlCommand(strsql,conn)
dim dr as SqlDataReader

conn.Open()
dr = cmd.ExecuteReader()

if dr.Read() then
TextBox1.Text = dr.GetString(1)
end if
dr.Close()

cn.Close()
gj0001 2003-08-25
  • 打赏
  • 举报
回复
dim cmd as SqlCommand=new SqlCommand(strsql,cn)
dim dr as SqlDataReader
cn.open()
dr=cmd.ExecuteNonQuery()
if dr.Read() then
TextBox1.Text=dr.GetString(1)
end if

cn.Close()
gmajrtfp1 2003-08-25
  • 打赏
  • 举报
回复
wd_318(饭加加) 的程序提示这个错误

编译器错误信息: BC30456: “DataItem”不是“System.Web.UI.Control”的成员。
gmajrtfp1 2003-08-25
  • 打赏
  • 举报
回复
我是这样写的:
前一页的连接地址为:http://xxx.com/xxx.aspx?id=5

本页是
Dim userid As String = Request("id")
Dim strsql As String = "select * from news where id='" & userid & "'"

然后就不知道怎么把数据绑到TEXTBOX上了;我是在后台准备做一个新闻修改的页面,从一系列的新闻列表中找到要修改的新闻,点进去后就把标题,内容放在TEXTBOX控件里,修改完后用UPDATE语句更新数据库。
请帮帮我啊,写个简单的原码给我看看好吗?请用VB.NET写,谢谢!
wd_318 2003-08-25
  • 打赏
  • 举报
回复
<input id="sydx" type="text" size="50" value='<%# DataBinder.Eval(Container.DataItem, "sydx") %>' runat="server" NAME="sydx"/>

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧