10.CS架构断开式应用程序设计入门解读.ppt

10.CS架构断开式应用程序设计入门解读.ppt

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
10.CS架构断开式应用程序设计入门解读

知识点: DataSet数据与数据库数据同步方法OleDbCommandBuilder 思考和练习 建立下列4个数据表,其关系类似students、subjects、grade和classes,完成课程中类似界面和程序的设计: Books(id,name,language,publicdate,price,classid) =书(书号,中/外文bit,出版日期,价格,分类号) Bookshop(shopid,name) =书店(编号,名称) SalePoint(id,shopid,qty) =销售点(书号,书店编号,存量) Classes(classid,name) =图书分类(分类号,分类名称) RadioButton状态改变时改变Tag值 在RadioButton的CheckedChanged事件中实现: if (radioButton1.Checked) radioButton1.Tag = false; else radioButton1.Tag = true; Students的sex属性类型为bit,其值只能取0和1,与radioButton1.Tag绑定后,Tag的值为true和false。 Tag值改变时要对RadioButton的状态作相应改变: 首先实现下列方法: private void SetSexRadioButton(object sender, EventArgs e) { if (radioButton1.Tag.ToString() == ) { radioButton1.Checked = false; radioButton2.Checked = false; return; } if (radioButton1.Tag.ToString() == False) { radioButton1.Checked = true; radioButton2.Checked = false; } else { radioButton1.Checked = false; radioButton2.Checked = true; } } 何时调用该方法: 方案一:在窗口打开后(Load事件)及按浏览按钮时,调用5次。 方案二:在窗口打开后(Load事件)和this.BindingContext[dataSet, “students”]对象的PositionChanged事件中调用,调用2次。 在BindingControls最后加: radioButton1.DataBindings.Add(tag, dataSet, students.sex); this.BindingContext[dataSet, students].PositionChanged += SetSexRadioButton; 在Form的Load事件中加: SetSexRadioButton(this, null); 九)使用程序对dataSet中数据表的插入、删除、修改和检索。 以上对dataSet的数据表的操作是通过绑定来实现的,修改控件中数据则自动更新数据表中数据,插入和删除则是通过this.BindingContext[dataSet, “students”]的AddNew方法和RemoveAt方法实现。 直接对DataSet中数据表操作方法如下: 修改:dataSet.Tables[students].Rows[0][name] = zhp; 插入: dataSet.Tables[students].Rows.Add(DataRow row)或 dataSet.Tables[students].Rows.InsertAt(DataRow row,int pos) 删除: dataSet.Tables[students].Rows[pos].Delete() dataSet.Tables[students].Rows.RemoveAt(int pos) 前者对应行作删除标记,后者作实际删除,所以使用后者用update无法更新数据库 两者当和子表建立relation,均会对子表的对应行作删除标记 dataSet.Tables[“account”].Rows[pos].Delete()和 this.BindingContext[da

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档