【问题标题】:Binding Winforms DataGridView to MembershipUserCollection将 Winforms DataGridView 绑定到 MembershipUserCollection
【发布时间】:2011-09-15 12:03:08
【问题描述】:

我正在尝试将 DataGridView 绑定到 MembershipUserCollection,但网格拒绝显示任何用户,即使数据库中有记录也是如此。

根据我在互联网上的研究,我做了以下事情:

MembershipUserCollection x = Membership.GetAllUsers();

gvUsers.DataSource = x;

感谢您的帮助。

【问题讨论】:

    标签: c# winforms binding datagridview


    【解决方案1】:

    也许这很明显,但我必须从 MemberShipUser 到 MembershipUser 进行细微调整。

    将 bindingList 设置为我的数据网格的数据源,效果很好!

    【讨论】:

      【解决方案2】:

      问题是你绑定的对象需要实现这些接口之一

      • IList
      • IListSource
      • IBindingList
      • IBindingView

      而 MembershipUserCollection 仅实现 ICollection

      一种解决方案是创建一个实现这些接口之一的包装器/适配器。


      这可能有效,但无法在 atm 测试。

      var collection = Membership.GetAllUsers();
      var bindingList = new BindingList<MemberShipUser>();
      
      // If it's only meant for display
      bindingList.AllowNew = false;
      bindingList.AllowRemove = false;
      bindingList.AllowEdit = false;
      
      foreach (MemberShipUser member in collection)
      {
          bindingList.Add(member);
      }
      

      【讨论】:

      • 关于如何创建此包装器/适配器的任何提示?
      猜你喜欢
      • 2010-09-12
      • 2012-11-02
      • 2016-04-26
      • 2011-04-21
      • 1970-01-01
      • 2012-02-12
      • 1970-01-01
      • 1970-01-01
      • 2013-08-10
      相关资源
      最近更新 更多