首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BindingList(指T)列出( T)

BindingList(指T)列出( T)
EN

Stack Overflow用户
提问于 2016-01-26 14:13:18
回答 1查看 855关注 0票数 0

我正在将一个BindingList( T)传递给一个列表( T),并且我正在体验这个列表的值一直在用DataGridViewSuppliers.DataSource的值更新自己

代码语言:javascript
复制
mInitialValue As New List(Of T)
Private Property DataSource As BindingList(Of T)
    Get
        If DataGridViewSuppliers.DataSource Is Nothing Then
            DataGridViewSuppliers.DataSource = New BindingList(Of T)
        End If
        Return CType(DataGridViewSuppliers.DataSource, BindingList(Of T))
    End Get
    Set(value As BindingList(Of T))
        DataGridViewSuppliers.DataSource = value
    End Set
End Property

  DataSource = lElements
  mInitialValue = lSuppAccounts.ToList()

我只想将绑定列表的初始值保存到一个单独的列表中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-26 15:15:06

BindingList( T)继承自列表( T),因此当您传递它时,它不会创建副本,它只允许您使用列表( T)的所有这些特性。在任何时候,您都可以将(T的)列表传递回BindingList(Of T),然后使用它的特性。这叫做多态性。您不是在复制数据,而是在传递指向原始列表的内存指针。

您需要的是数据的副本,它不是内存指针,而是自己的内存空间。为此,可以使用列表的CopyTo()方法。它将复制一个副本,然后您可以将其放入另一个列表中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35015856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档