zoukankan      html  css  js  c++  java
  • DataSet / BindingSource / DataGridView / BindingNavigator 的关系与绑定、更新顺序

    1.数据源DataSet是保存数据,以及发布数据更新通知的核心。
    
    
    2.BindingSource,是控件(DataGridView / BindingNavigator)与数据源交互的桥梁。BindingSource的DataSource指向数据源DataSet之后,数据源或控件的数据更改,则会被BindingSource传递到另一头。
    
    3.DataGridView / BindingNavigator是数据控件,它们应该从BindingSource获取数据。当数据控件的数据,被用户更改后,则会通知BindingSource,接着BindingSource再通知数据源DataSet。
    
    
    
    因此,这些组件绑定与更新的顺序为:
    
    1.创建DataSet
    
    2.把BindingSource的BindingSource绑定到DataSet。
    
    3.把DataGridView的DataSource,以及BindingNavigator的BindingSource,都绑定到BindingSource。
    
    关键:如果DataSet的数据发生变化,或者DataGridView / DataSource的数据发生变化,则双向的更改是自动进行与传递的。
    
        但如果DataSet被替换,则需要把BindingSource的BindingSource重新绑定到DataSet。DataGridView 与 BindingNavigator则不需要更改,因为BindingSource会自动通知他们。
    
        同理,如果DataGridView的DataSource,以及BindingNavigator的BindingSource被替换,也就是他们的BindingSource被替换,则DataSet也需要重新绑定到新的BindingSource中。注意,DataGridView的DataSource,以及BindingNavigator的BindingSource,应该被替换为同一个BindingSource,这样他们才能具有可交互性。
    
    如果有任何问题,请加QQ群 68328977 来进行讨论。
  • 相关阅读:
    20190922 模拟
    poj3417 Network/闇の連鎖[树上差分]
    poj3280 Cheapest Palindrome[区间DP]
    poj3691 DNA repair[DP+AC自动机]
    BZOJ1030 [JSOI2007]文本生成器[DP+AC自动机]
    loj2424 「NOIP2015」子串[字符串DP]
    poj1038 Bugs Integrated, Inc.[状压DP]
    第05组 Beta冲刺 (2/5)(组长)
    第05组 Beta冲刺 (1/5)(组长)
    第05组 Alpha冲刺 总结(组长)
  • 原文地址:https://www.cnblogs.com/xxxteam/p/2851277.html
Copyright © 2011-2022 走看看