A OPERA?ÃO REQUER IBINDINGLIST

MAXCIM 04/03/2017 21:00:25
#472153
Olá amigos,

preciso filtrar um BindingSource
dim DADOS as bindingsource = new bindingsource
dados.datasource = get_dados ( uma classe listOF)

dim pos = dados.find([Ô]ID[Ô],myid)
dados.posistion= pos


recebo a mensagem de erro [Ô]a operação requer ibindinglist[Ô]

fiz inúmeras pesquisa no google e não encontrei solução.
MAXCIM 05/03/2017 09:25:45
#472159
Olá Damasceno, obrigado pela ajuda, no texto:

Como ele diz, ele só pode encontrar em IBindingList. A lista <T> é uma
Classe [Ô]leve[Ô] projetada para desempenho - para ligação, uso
BindingList <T> (que implementa IBindingList).

como eu montaria a busca no BindingSource usando BindingList <T>?
MAXCIM 05/03/2017 10:47:45
#472160
Dim ret = dados.List().IndexOf(Function(x) x.id= 2)
porem o retorno é sempre -1 ( o valor existe mas não retorna)

Dim resul = dados.DataSource.indexof(Function(p) p.id = 2)
também da erro....
LVFIOROT 05/03/2017 10:54:59
#472162
Resposta escolhida
http://stackoverflow.com/questions/11016748/bindingsource-find-throws-notsupportedexception-datasource-is-bindinglistt
http://www.vbdotnetforums.com/database-general-discussion/12325-bindingsource-find-method-not-working.html
Public Class A

Public Sub New(ID As String)
Me.ID = ID
End Sub

Private _ID As String


Public Property ID() As String
Get
Return _ID
End Get
Set(ByVal value As String)
_ID = value
End Set
End Property

End Class
Public Class Form1

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim DADOS As BindingSource = New BindingSource
Dim LISTA = New List(Of A)
LISTA.Add(New A([Ô]A[Ô]))
DADOS.DataSource = LISTA

Dim pos = DADOS.List.OfType(Of A)().ToList().Find(Function(A) A.ID = [Ô]A[Ô])
DADOS.Position = DADOS.IndexOf(pos)
End Sub
End Class

MAXCIM 05/03/2017 11:35:27
#472165
valeu, LVFIOROT, ficou perfeito!

brigadãooooo!
Tópico encerrado , respostas não são mais permitidas