有关DateGridView更新的

问题描述

我正在做myschool项目,使用DataGridView做更新,他需要根据试卷的难易程度来显示数据集,可是我只能在当前的更新,我该怎么办??????????????usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;namespaceMySchool{publicpartialclassQuestionListForm:Form{SqlConnectioncon=null;SqlCommandcmd=null;SqlDataAdapteradp=null;DataSetdataset=newDataSet("myDB");publicQuestionListForm(){InitializeComponent();}publicenumColumnName{QuestionId,Question,Answer,Difficulty,SubjectId,OptionA,OptionB,OptionC,OptionD,};privatevoidQuestionListForm_Load(objectsender,EventArgse){try{SetupDataSource();DataGridView1.DataSource=bindingSource1;DataGridView1.Columns[ColumnName.Answer.ToString()].DefaultCellStyle.NullValue=null;}catch(Exceptionex){MessageBox.Show(ex.Message);}}privatevoidmybind(SqlConnectioncon){stringstrselectQuestion=comboBox1.Text;stringsqlstr="select*fromQuestionwhereDifficulty='"+strselectQuestion+"'";SqlDataAdapteradp=newSqlDataAdapter(sqlstr,con);DataSetdataset=newDataSet("myDB");adp.Fill(dataset,"Question");DataGridView1.DataSource=dataset.Tables["Question"].DefaultView;}privatevoidSetupDataSource(){con=newSqlConnection(ConnectiongString.GetString());stringsql="Select*fromQuestion";cmd=newSqlCommand(sql,con);adp.Fill(dataset,"Question");newSqlCommandBuilder(adp);bindingSource1.DataSource=dataset;bindingSource1.DataMember="Question";}privatevoidcomboBox1_SelectedIndexChanged(objectsender,EventArgse){SqlConnectioncon=newSqlConnection(ConnectiongString.GetString());mybind(con);}privatevoidbtnClose_Click(objectsender,EventArgse){this.Close();}privatevoidbtnUpdate_Click(objectsender,EventArgse){try{this.Validate();this.bindingSource1.EndEdit();this.adp.Update(dataset,"Question");}catch(Exceptionex){MessageBox.Show(ex.Message);}}privatevoidbutton1_Click(objectsender,EventArgse){DataGridView1.Visible=true;con=newSqlConnection(ConnectiongString.GetString());adp=newSqlDataAdapter("SelectDistinctDifficultyfromQuestion",con);dataset=newDataSet("myDB");adp.Fill(dataset,"Question");comboBox1.DisplayMember="Difficulty";comboBox1.DataSource=dataset.Tables["Question"].DefaultView;mybind(con);}privatevoidcomboBox1_SelectedValueChanged(objectsender,EventArgse){SetupDataSource();DataGridView1.DataSource=bindingSource1;DataGridView1.Columns[ColumnName.Answer.ToString()].DefaultCellStyle.NullValue=null;}}}

解决方案

解决方案二:
你想实现什么?一行注释都没有,晕
解决方案三:
usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;namespaceMySchool{publicpartialclassQuestionListForm:Form{SqlConnectioncon=null;SqlCommandcmd=null;SqlDataAdapteradp=null;DataSetdataset=newDataSet("myDB");publicQuestionListForm(){InitializeComponent();}publicenumColumnName//枚举Question表中内容{QuestionId,Question,Answer,Difficulty,SubjectId,OptionA,OptionB,OptionC,OptionD,};privatevoidQuestionListForm_Load(objectsender,EventArgse){try{SetupDataSource();//更新表DataGridView1.DataSource=bindingSource1;DataGridView1.Columns[ColumnName.Answer.ToString()].DefaultCellStyle.NullValue=null;}catch(Exceptionex){MessageBox.Show(ex.Message);}}privatevoidmybind(SqlConnectioncon)//绑定,利用下拉菜单出现不同的表{stringstrselectQuestion=comboBox1.Text;stringsqlstr="select*fromQuestionwhereDifficulty='"+strselectQuestion+"'";SqlDataAdapteradp=newSqlDataAdapter(sqlstr,con);DataSetdataset=newDataSet("myDB");adp.Fill(dataset,"Question");DataGridView1.DataSource=dataset.Tables["Question"].DefaultView;}privatevoidSetupDataSource(){con=newSqlConnection(ConnectiongString.GetString());stringsql="Select*fromQuestion";cmd=newSqlCommand(sql,con);adp.Fill(dataset,"Question");newSqlCommandBuilder(adp);bindingSource1.DataSource=dataset;bindingSource1.DataMember="Question";}privatevoidcomboBox1_SelectedIndexChanged(objectsender,EventArgse){SqlConnectioncon=newSqlConnection(ConnectiongString.GetString());mybind(con);}privatevoidbtnUpdate_Click(objectsender,EventArgse)//更新表{try{this.Validate();this.bindingSource1.EndEdit();this.adp.Update(dataset,"Question");}catch(Exceptionex){MessageBox.Show(ex.Message);}}}}我想要根据下拉列表选择表,而且可以更新,但是貌似我的更新在form中写的,因此只能跟新一个当前表,以后就不能更新了,不知道在那个方法中可以多个表中都可以更新!
解决方案四:
定义dataset全局变量选择表查询数据绑定到dataset中。再根据表名实现数据publicvoidUpdate(){adp.Update(ds,"Table1");}}

时间: 2024-11-05 18:52:05

有关DateGridView更新的的相关文章

300+篇运维、数据库等实战资料免费下载(文章+PDF+视频,持续更新)

2017年已过去一半,在此小编为大家精心整理了2017上半年热点事件解析.实战技术资料以及特别策划短视频系列,希望可以帮助大家更深入地回顾上半年的技术热点,并储备更充足的技术干粮继续2017的下一半. PART 1 峰会回顾资料 云栖大会 [上海云栖大会]2017云栖大会上海峰会资料合计(现场视频+PDF下载) [成都云栖大会]2017云栖大会成都峰会资料合计(现场视频+PDF下载) [南京云栖大会]2017云栖大会南京峰会资料合计(现场视频+PDF下载) 技术峰会 [运维/DevOps峰会]

MathType公式编号怎么更新

具体操作如下: 1.打开Word文档,当没有删除公式时,其正常的MathType公式编号如下所示: MathType公式编号示例 2.删除其中一个公式,比如公式3,理论上来说后面的公式应该要自动更新,然而这种情况并没有出现,各个编号还是保持原有的序号. 删除公式及相应的编号 3.回到Word中的MathType菜单中,点击使用"更新公式编号(Updata Equation Numbers)". 使用MathType菜单中的"更新公式编号"命令 4.这时你会发现刚刚还

账户更改 问题-SVN账户变换不能更新问题

问题描述 SVN账户变换不能更新问题 一开始检索出项目A,但是没有提交权限.项目代码有更改,后来换了有权限的账户,更改SVN账户后,发现不能更新提交.这种情况怎么解决? 简单的说就是我检索的账户与提交的账户不同,又不能重新检出,由于项目改了许多. 解决方案 不同的账户是不可以交叉提交的,因此你换了账户后就不能提交了.解决办法是,你用有提交权限的账户重新检出,然后将你以前检出的代码覆盖新检出的再进行提交. 解决方案二: 这个我倒是懂,就是改的东西有些需要对比下,省的冲突,重新检出覆盖可能会将别人的

C++Builder 软件还在完善和更新吗?

问题描述 C++Builder 软件还在完善和更新吗? 我用C++builder5开发的应用程序,打包后做成安装系统,却无法在win7系统上安装,有人告诉我说是因为C++Builder 软件开发公司已经不再对其维护和更新了,所以无法适用于高版本的window系统,是这样的吗? 解决方案 基本没有维护了,换visual studio吧. 解决方案二: 貌似还有BCB XE之类的新版本存在,但是从市场份额来说,BCB几乎绝迹了. 解决方案三: BCB在5之后又经历了6,2006,2007,2009,

win7系统下Update更新出现错误代码80073712的解决方法

  1.确认一下更新服务是否正常.首先在键盘上按"Win+R"输入打开"运行"窗口,输入"services.msc"命令回车打开服务窗口; 2.然后分别检查Background Intelligent Transfer Service服务.Cryptographic服务.Software Protection服务.Windows Update服务,确保对应的"状态"栏是否都处于"已启动",如果发现以上某服务

win7开机出现“致命错误C0000034,正在更新操作XXX 共XXX个”的解决步骤

  win7系统开机出现问题属于常见故障问题之一,这不有位用户说win7系统开机的时候出现"致命错误C0000034,正在更新操作XXX 共102964个0000000000000000.cdf-ms"这是怎么回事呢?可能是电脑在更新时,中途因为某种原因而中断(如强制关机,断电,意外重启等),再次开机就会出现这种情况.本文教程为大家讲解详细解决步骤. 解决步骤如下: 1. 手动重启电脑,一直按F8,选择选项 "启动修复": 2.修复启动框---取消---"

PHP实现网页自动更新块

  前言:现在很多有个人主页或者博客的朋友选择租用虚拟主机,而相当一部分虚拟主机支持PHP.如果你有一个支持php的主机空间,有没有用php把自己的网站武装起来呢? 能不能让php为你的网页添加一些每隔一段时间就自动更新的内容,以更好的吸引访客呢?实现这一功能并不需要太高深的编程知识,请看以下例子: (一)英语谚语 让我们来看一个简单的应用:让php程序从数据库中随机提取一行记录,显示在网页上,隔15分钟再去读取另一条记录.英汉对照的谚语是个适合显示的内容. 考虑到放置个人主页的廉价虚拟主机多数

PHP为你的网页更新

博客的朋友选择租用虚拟主机,而相当一部分虚拟主机支持PHP.如果你有一个支持php的主机空间,有没有用php把自己的网站武装起来呢? 能不能让PHP为你的网页添加一些每隔一段时间就自动更新的内容,以更好的吸引访客呢?实现这一功能并不需要太高深的编程知识,请看以下例子: (一)英语谚语 让我们来看一个简单的应用:让PHP程序从数据库中随机提取一行记录,显示在网页上,隔15分钟再去读取另一条记录.英汉对照的谚语是个适合显示的内容. 考虑到放置个人主页的廉价虚拟主机多数不支持MySQL之类的数据库,我

从百度更新中看链接买卖是否已经穷途末路

从11月5号百度一篇新闻稿告知大家,百度要进行链接的算法更新了,就让我一直观察到现在,看看百度到底对于链接购买的网站有多少的效果,看看百度对于链接这一块到底产生了多大的大影响,也试问一下,链接交易买卖是否真的已经穷途末路了,毕竟现在的我们有时候还是需要使用一些外链才能让我们的网站更加稳定,产生最好的效果. 百度对于购买网站的链接会处置吗? 在那一天,11.5号百度发布了官方消息,说购买链接的网站将被百度的算法监控从而失去竞争排名的机会,这让很多站长和公司广泛传播,但是试着想一下,购买链接到底是从