本帖最后由 wenjiahezmt 于 2013-02-24 23:21:02 编辑

解决方案 »

  1.   

    你用用SPSS或者Excel没准会发现它们更加强大。你的思维方式基本是一个最终用户的思维方式,你关注界面和数据的处理,而对程序怎么运作和设计,一点没有概念。
      

  2.   

    用户界面上数据的改动,是直接改动到datatable里的,你测试一下,就是这样,另一方面,如果你改变了datatable,只要重新绑定到DataGrideview,DataGrideview就会显示所做的修改,不过就是要记下当前DataGrideview的滚动位置,重新绑定后会自动跳回到第一行,你需要重新设置跳回来,
      

  3.   

    谢谢,我明白CSharp很强大,就我这个具体问题,您能解答下吗?
      

  4.   

    谢谢回复。
    我知道DataGrideview绑定后可以和datatable自动交换,而且一次可以显示多条记录。
    我想要的效果是一次显示一条记录,不同的字段对应不同的Form控件,这个时候我上面提到的控件显示内容和datatable之间的交互就显得特别麻烦。
      

  5.   

    自己做个控件。。
    把绑定数据还有反应数据变动的处理加进去。
    在画面拖增加控件,绑定数据就可以了。
    代码肯定要写的。
    类似于datagridview吧
      

  6.   

    高手请问,如果一个文本控件和datatable里的某一个字段绑定后,只要datatable里有数据,此控件显示的始终是第一条数据吗?怎样切换到第n行数据呢?
      

  7.   

    自己顶下,我就不信堂堂CSDN论坛,我这个新手的问题竟然没人能解决??
      

  8.   

    比如你加个combox。里面显示选择哪一条记录。选哪一条显示哪一条就是了。
      

  9.   

    楼主用的datatable,是强类型的datatable,还是弱类型的datatable。如果是强类型的话,简单的拖动控件就可以实现了,弱类型的话稍微麻烦
      

  10.   

    使用Bindingsource,将属性和字段做下绑定应该就是你要的结果了
      

  11.   

    看来你主要是嫌弃datagrid不好看而已。你自己继承它重写一下样式,不用麻烦的全部都去写控件。至于美化空间网上一大把教程
      

  12.   

    你做个winfrom啊.....界面代码分离,想怎么样就怎么样.....哎,
      

  13.   

    我一般是用dataCommand来直接对数据库进行操作,将增加修改操作直接放到 事件 里。
      

  14.   

    用Control.BindingContext 可以实现我要的功能,
    The BindingContext of a Control is used to return a single BindingManagerBase for all data-bound controls contained by the Control. The BindingManagerBase keeps all controls that are bound to the same data source synchronized. For example, setting the Position property of the BindingManagerBase specifies the item in the underlying list that all data-bound controls point to.
    感谢热心朋友的回答。