请问一个弱智级ADO.NET问题!进者又分

poisonb 2003-10-09 08:27:30
如何将textbox、radiobuuton之类的控件的内容加入到dataset,并加入到数据库
...全文
53 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
Reeezak 2004-03-26
  • 打赏
  • 举报
回复
不是很明白楼主的意思
上面的兄弟们已经说的很清楚了啊
楼主是不是想直接将textbox里面的东西添加到dataset?而不通过datagrid?
是的话就好办了

比如你的dataset的tables[0]里面有一个column,名叫“name”
而你还有一个textbox是专门叫人输入name的,名叫"txtName"
那么你可以这样(以添加一条记录为例)

DataRow row = ds.Tables[0].NewRow();
row["name"] = this.txtName.Text;
......
......//这里是你的这行数据的所有列
ds.Tables[0].Rows.Add(row);

加入到数据库就用Adapter的Update方法就可以了,很方便的

PS:个人感觉DataGrid并不怎么样?我还是常常用ListView,舒服啊,^_^
Reeezak 2004-03-26
  • 打赏
  • 举报
回复
瓦赛
看看
虎翼 2004-03-25
  • 打赏
  • 举报
回复
来晚了
marvelstack 2004-03-25
  • 打赏
  • 举报
回复
1.定义
private DataSet ds2;
2.绑定
private void button9_Click(object sender, System.EventArgs e)
{

ds2=CreateDataSet2();
textName.DataBindings.Add("Text",ds2,"Products.ProductName");
textQuan.DataBindings.Add("Text",ds2,"Products.QuantityPerUnit");
trackBar1.Minimum=0;
trackBar1.Maximum=this.BindingContext[ds2,"Products"].Count-1;
}
3.移动
private void trackBar1_Scroll(object sender, System.EventArgs e)
{
this.BindingContext[ds2,"Products"].Position=trackBar1.Value;
}
zdcscc 2004-03-25
  • 打赏
  • 举报
回复
哈哈楼上的跟仔细了。
不过建议楼主多看看
书咯翻翻资料咯。
top_hipster 2004-03-25
  • 打赏
  • 举报
回复
呵呵,我建议尽量用代码来写!并提高重用性
wiselyjs 2004-03-25
  • 打赏
  • 举报
回复
System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection("server=localhost;database=northWind;uid=sa;password=110");
conn.Open();
System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter("select * from student",conn);
dt = new System.Data.DataSet();
da.Fill(dt,"student");

然后绑定数据集和DataGrid
DataGrid.SetDataBinding(dt,"student");
如果需要,可以绑定TextBox来作录入,而用DataGrid显示
this.textBox16.DataBindings.Add("Text",dt,"student.stuno");
然后进行数据的操作如:
增加:
this.BindingContext[dt,"student"].AddNew();
删除:
this.BindingContext[dt,"student"].RemoveAt(this.BindingContext[dt,"student"].Position);
最后把结果写回数据库:


// sqlInsertCommand1
//
this.sqlInsertCommand1.CommandText = "INSERT INTO student(stuno, name) VALUES (@stuno, @name)";
this.sqlInsertCommand1.Connection = this.conn;
this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@stuno", System.Data.SqlDbType.VarChar, 4, "stuno"));
this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@name", System.Data.SqlDbType.VarChar, 50, "name"));
//
// sqlUpdateCommand1
//
this.sqlUpdateCommand1.CommandText = "UPDATE student SET stuno = @stuno, name = @name WHERE (stuno = @Original_stuno)";
this.sqlUpdateCommand1.Connection = this.conn;
this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@stuno", System.Data.SqlDbType.VarChar, 4, "stuno"));
this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@name", System.Data.SqlDbType.VarChar, 50, "name"));
this.sqlUpdateCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Original_stuno", System.Data.SqlDbType.VarChar, 4, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "stuno", System.Data.DataRowVersion.Original, null));

// sqlDeleteCommand1
//
this.sqlDeleteCommand1.CommandText = "DELETE FROM student WHERE (stuno = @Original_stuno)";
this.sqlDeleteCommand1.Connection = this.conn;
this.sqlDeleteCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@Original_stuno", System.Data.SqlDbType.VarChar, 4, System.Data.ParameterDirection.Input, false, ((System.Byte)(0)), ((System.Byte)(0)), "stuno", System.Data.DataRowVersion.Original, null));

this.sqlDa.DeleteCommand = this.sqlDeleteCommand1;
this.sqlDa.InsertCommand = this.sqlInsertCommand1;
this.sqlDa.UpdateCommand = this.sqlUpdateCommand1;
try
{
sqlDa.Update(dt.GetChanges,"student");
return true;
}
catch(System.Data.SqlClient.SqlException ex)
{

return false;
}
finally
{
conn.Close();
}
poisonb 2004-03-25
  • 打赏
  • 举报
回复
居然还有没有结的贴?
顶一下
看看有没有答案
^_^
Soking 2003-11-25
  • 打赏
  • 举报
回复
没听懂
hanprogrammer 2003-11-25
  • 打赏
  • 举报
回复
我认为如果数据记录很多的话,用数据库语名会比DATESET性能上提升很多
syf1125 2003-11-25
  • 打赏
  • 举报
回复
绑定就可以了

gabriel1 2003-11-24
  • 打赏
  • 举报
回复
棒定嘛。。都可以的。
tonyye1979 2003-11-24
  • 打赏
  • 举报
回复
学习中ing...
101monster 2003-11-24
  • 打赏
  • 举报
回复
呵呵,偶不通
dldl 2003-11-24
  • 打赏
  • 举报
回复
帮定就行了
liusuccess 2003-11-23
  • 打赏
  • 举报
回复
还没解决吗?没太明白你的意思,请发短信说明
Ken_Xie 2003-11-23
  • 打赏
  • 举报
回复
我感觉是不是楼主想用什么GUI的方法绑定哦,不想写代码来着。
用代码实现楼上的的说过了,偶就不好说了,用GUI的,好像没有这样的用法,呵!
zhpsam109 2003-11-23
  • 打赏
  • 举报
回复
学习!
poisonb 2003-11-23
  • 打赏
  • 举报
回复
自顶!
zhengjiang 2003-11-23
  • 打赏
  • 举报
回复
晕,snof的太复杂了,我觉得哈,
还是用ddmor(ddmor) 的效率比较高哈!!
反正要说的都被你们说了,我只好
评价一下!
也许不对啊!!!
加载更多回复(13)

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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