永发信息网

c#: 用datagridview从数据库加载数据,怎么判断数据已经完全加载完毕了呢

答案:2  悬赏:60  手机版
解决时间 2021-01-24 08:12
  • 提问者网友:精神病院里
  • 2021-01-23 17:17
我想用两个按钮实现对当前行的“积分字段”加或者减1.单点击某行,这两个按钮移动到当前行行首的两个列中,怎么才能让按钮随着行的改变而移动呢,如果在rowenter事件中,当加载数据时候,也会触发事件,我想在数据都加载完之后,这个事件中的代码才有效

我想定义一个boolean的变量can,然后在数据加载完之后设为true;rouenter事件中判断如果can为TRUE,就弹出对话框,但是还不行,窗体显示的一开始,还是会执行弹出对话框
最佳答案
  • 五星知识达人网友:摆渡翁
  • 2021-01-23 17:49
DataBindingComplete 事件中改变bool的值
全部回答
  • 1楼网友:千杯敬自由
  • 2021-01-23 19:22
1、获取datagridview中的数据结构表 定义一个全局的datatable,使用(datatable)datagridview.datasource获取,注意保证datagridview列名与标题保持一致,防止出错。 2、根据datatable组sql 定义一个getsql的方法,传三个参数,一个是datatable型,即数据表对象;一个string,传递sql语句的主表名;一个是list,传递sql语句的主键信息。 大致的逻辑是,循环datatable每一行记录,对于每一行记录再进行一次循环。循环单行记录的每一列,组一个sql字串出来。例如: string sql=string.format(@"update {0} set ",参数二); string strfliter=""; foreach(datarow dr in datatable.rows) {     foreach(datacolumn dc in datatable.columns)     {         if(参数三.contains(dc.columnname))//如果是主键         {             strfliter = strfliter+dc.columnname +"='" +dr[dc].tostring()+"',";////"列名='xxx',"         }         else//如果是修改列         {             sql = sql+dc.columnname +"='" +dr[dc].tostring()+"',";         }     } } ``` strfilter = strfilter .substring(0,strfilter .length-1); sql = sql.substring(0,sql.length-1) +" where "+strfliter;参照类似的写法,可基本组出最终的sql(以上代码未测试,仅提供思路,慎重使用)。 最后执行组出来的所有sql即可。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯