请教各位高手一个多表关联的问题,高分酬谢(如果解决满意,300分)

city_lovelace 2005-06-18 12:36:37
背景:
  数据表一(task):
  taskID (Key)
taskName
...
taskTypeID

数据表二(taskType):
taskTypeID
taskTypeName
两个表通过taskTypeID关联起来。

然后在form中使用一个dataGrid,来显示task表中一些最基本的信息,更详细的信息通过大量的textBox,comboBox来显示(同时方便修改),这些控件都关联到dataSet上。

问题:
 1. 如何能够在comboBox中正确显示taskTypeName? 应该将comboBox关联到哪个表的哪一列?dataAdapter和dataSet如何设置?
2. 在新增记录的时候(在task表中增加记录),如何能够将comboBox中选择的taskTypeName反映在task表中?

 不知描述清楚了没?如果没有,请大家留言问我 
...全文
184 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zeusvenus 2005-06-19
  • 打赏
  • 举报
回复
you can also use the data relations
zeusvenus 2005-06-19
  • 打赏
  • 举报
回复
you can also use the data relations
zeusvenus 2005-06-19
  • 打赏
  • 举报
回复
sunjian_qi get the right means!
marvelstack 2005-06-19
  • 打赏
  • 举报
回复
给你两篇具体的文章,你应该能搞定,
http://blog.csdn.net/zhzuo/archive/2004/08/06/67016.aspx
http://blog.csdn.net/zhzuo/archive/2004/08/06/67037.aspx
http://blog.csdn.net/zhzuo/archive/2005/01/03/238273.aspx
凨叔 2005-06-18
  • 打赏
  • 举报
回复
假如comboxBox中显示的是taskType表
string strSQL = "select taskTypeID, taskTypeName from taskType";
SqlCommand comm = new SqlCommand(strSQL, sqlConn);
SqlDataAdapter da = new SqlDataAdapter(comm);
DataTable tb = new DataTable();
da.Fill(tb);
comboBox.DataSource = tb;
comboBox.DisplayMember = "taskTypeName";
comboBox.ValueMember = "taskTypeID";

另一个DataTable tbData从task取数(略)。
然后comboxBox.DataBindings.Add("Value", tbData, "taskTypeID");
prochf 2005-06-18
  • 打赏
  • 举报
回复
建议你用DevExpress控件中的LookUpEdit,使用很方便的,当然你还得为表taskType设个主键taskTypeIDtaskTypeID,
设LookUpEdit1.DisplayMember="taskTypeName";
lookUpEdit1.Properties.ValueMember="taskTypeID";
这样你就可以根据lookUpEdit1.EditValue进行操作了
city_lovelace 2005-06-18
  • 打赏
  • 举报
回复
to: zhengke111(柔柔)
具体点嘛
zhengke111 2005-06-18
  • 打赏
  • 举报
回复
标准的方法是做一个视图
city_lovelace 2005-06-18
  • 打赏
  • 举报
回复
to: sunjian_qi(sonne)
这句话comboxBox.DataBindings.Add("Value", tbData, "taskTypeID");
会导致错误:无法绑定到目标控件的属性“Value“
看了一下,comboBox确实没有Value这个属性
city_lovelace 2005-06-18
  • 打赏
  • 举报
回复
感谢大家的热情回复,我先去试一下先。
to:builderman(软件民工)
是很简单,也因为我才开始接触这个东西,我原来一直用的是C语言,在嵌入式平台下面做协议开发
zr1982930 2005-06-18
  • 打赏
  • 举报
回复
提醒注意一点,是绑定两表之间的关系噢!
凨叔 2005-06-18
  • 打赏
  • 举报
回复
这句话comboxBox.DataBindings.Add("Value", tbData, "taskTypeID");
会导致错误:无法绑定到目标控件的属性“Value“
看了一下,comboBox确实没有Value这个属性
------------------------------------------------------------
Sorry, 是我搞错了,是comboxBox.DataBindings.Add("SelectedValue", tbData, "taskTypeID");
pingdan_yang 2005-06-18
  • 打赏
  • 举报
回复
先顶一下,明天再看,学习。
builderman 2005-06-18
  • 打赏
  • 举报
回复
其实你的问题很简单, 真的很简单.
builderman 2005-06-18
  • 打赏
  • 举报
回复
http://builderman.home.sunbo.net/show_hdr.php?xname=U53DTV0&dname=G35ETV0&xpos=5
介意你也看一篇文章

110,538

社区成员

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

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

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