情况是这样的,我用的是拖控件的方式,把数据表A 用 datagridview 控件显示在窗体上的,但更新数据的时候我用的是直接连接数据库进行更新的方法,有2个问题
1、数据中的数据更新后怎么来刷新datagridview中的数据呢(用的是控件拖放方式显示的数据,自动添加了一堆控件,有 datase、bingdingsource、tableadapter、adaptermanager)?2、如果用 bindingNavigator 来添加记录的话,可以自动为某些字段添加默认值吗?谢谢!

解决方案 »

  1.   

    问题1
    你直接使用的dgv,所以当你的数据库内容发生改变的时候,你的这个页面在打开的时候会自动更新,就是他会查一次数据库,当然,你也可以使用缓存依赖
    问题2
    我不明白你所说的添加默认值是指的显示页面还是数据库,数据库显然不能,显示页面就可以控制
      

  2.   

    billBinding就是bingdingsource        private void tv_BillChapter_AfterSelect(object sender, TreeViewEventArgs e)
            {
                if (e.Node.Tag == null) return;
                string zjid = e.Node.Tag.ToString();
                if (this.dataTransaction.GetDataTable("Bill") == null)
                {
                    this.billBinding.DataSource = this.dataTransaction.GetDataTable("select * from Bill", "Bill", DataBaseType.BillDB);
                }
                billBinding.Filter = "BillSectionID = " + zjid;
                this.grid_Bill.DataSource = billBinding;
            }
      

  3.   

    谢谢回复。
    1、页面打开的时候肯定会自动更新,我是想页面不用重新打开就能及时刷新;
    版主大大的回复看的不太懂。我这个方法是最初级的空间拖放的方法,目前窗体上自动添加的控件有:datase、bingdingsource、tableadapter、adaptermanager,datagidview 的datasource 是 bingdingsource,我在想要datagridview 跟新内容,那这个bingdingsource 应该要更新吧,但是应该怎么做呢?2、 bindingNavigator  不是可以添加新记录嘛,但是添加后都是手动输入每个字段的值嘛,可以在添加的时候自动填充某些字段呢?比如 日期 字段。
    谢谢!