bind = new BindingSource();
            bind.DataSource = ds.Tables["MyDetail"];            bindingNavigator2 = new BindingNavigator(bind);            dataGridView1.DataSource = bind;            this.txt账户名称.DataBindings.Clear();
            this.txt账户名称.DataBindings.Add("Text", bind, "账户名称");            this.dtp日期.DataBindings.Clear();
            this.dtp日期.DataBindings.Add("Value", bind, "日期");
dataGridView1的"账户名称"列与 txt账户名称 都绑定ds.Tables["MyDetail"]的 账户名称 字段    //TextBox
dataGridView1的"日期"列与 txt日期 都绑定ds.Tables["MyDetail"]的 日期 字段。  //DateTimePicker现在的问题是,当我fill()数据表时,如果没有绑定DateTimePicker,那么dataGridView1与TextBox相对应的字段都是同步显示与更新的,但是当我绑定了DateTimePicker,数据表中有资料,还是那么多,我查看过,但是dataGridView1却显示不出来,
我就是想DateTimePicker与TextBox能做成一样的效果。
请教

解决方案 »

  1.   

    datagridview1是自动生成列还是设计好的列  如果是设计好的列的话 有可能不出来  
      

  2.   

    自动生成的,从fill生成的dataTable绑定的
    这个问题还是没解决啊,麻烦有高手没
      

  3.   

    你的意思是当我dataGridView有一行数据被fill()进来的时候,检测事件会被触发然后同步数据到各个控件的值上?那这样不是要写多写代码,我就想用最简单的方式达到效果,能用.net自己的类能实现就好了,不想多写代码,比较懒
      

  4.   

    我明白了,可能是DateTimePicker不像textBox绑定的时候默认取第一行,所以DateTimePicker不知道取哪行,结果就显示不出来
      

  5.   

    DateTimePicker怎么才能达到与textBox一样的效果
    在构造函数里面,我这样写
    bindDetail = new BindingSource();
    bindDetail.DataSource = ds.Tables["DetailTable"];this.txt说明.DataBindings.Clear();
    this.txt说明.DataBindings.Add("Text", bindDetail, "说明");this.dtp日期.DataBindings.Clear();
    this.dtp日期.DataBindings.Add("Value", bindDetail, "日期"); if (ds.Tables["DetailTable"].Rows.Count > 0)
           this.dtp日期.Value = Convert.ToDateTime(ds.Tables["DetailTable"].Rows[0]["日期"]);
    为什么绑定textBox在构造函数执行完以后,就能显示出第一笔记录row[0]的第一笔相对应的绑定数据,
    而DateTimePicker却不行???如果绑定就直接显示不出来,怎么解决?