LISTBOX, COMO EXCLUIR ITENS QUE J? EXITE EM OUTRO

DJHASSELMANN 25/02/2017 11:41:27
#471945
Boas pessoal!

Como faço para não apresentar itens em Listbox que já tenha em outro listbox? Por exemplo tenho 2 listas uma de produtos cadastrados e outra de produtos fornecidos pelo fornecedor selecionado (Cadastrado Açucar Cristal e na lista de produtos fornecidos já tenha o Açucar Cristal) o que não gostaria que o item estaja na primeira lista pois já consta na segunda), Estou usando o VB.NET 2015, Banco ACCESS 2016 e utilizando o BindingNavigator para correr os registros! A quem realmente puder ajudar-me agradeço, obrigado!
TUNUSAT 25/02/2017 22:20:42
#471946
DJHASSELMANN,

Um [Ô]For[Ô] dentro de um [Ô]For[Ô] resolve o problema. A ideia é verificar se o item já está na outra lista e pedir para [Ô]pular[Ô] o item na hora de adicioná-lo a ListBox.
Segue o exemplo abaixo.


 Public Class frmListBox
Dim arrItensFornecidos(9) As String

Private Sub frmListBox_Load(sender As Object, e As EventArgs) Handles MyBase.Load

[ô]Adicionar itens na lista de Fornecidos
lsbFornecidos.Items.Add([Ô]Açúcar Cristal[Ô])
lsbFornecidos.Items.Add([Ô]Açúcar Mascavo[Ô])
lsbFornecidos.Items.Add([Ô]Açúcar de Beterraba[Ô])

[ô]Montar uma array de itens a serem cadastrados na [ô]lsbCadastrados[ô].
arrItensFornecidos = {[Ô]Açúcar de Beterraba[Ô], [Ô]Tomate Cereja[Ô], [Ô]Batata Asterix[Ô], [Ô]Pepino Japonês[Ô], [Ô]Açúcar Mascavo[Ô], [Ô]Açúcar Cristal[Ô], [Ô]Cenoura[Ô], [Ô]Beterraba[Ô], [Ô]Salsa[Ô], [Ô]Agrião[Ô]}

End Sub

Private Sub btnCadastrar_Click(sender As Object, e As EventArgs) Handles btnCadastrar.Click
Dim blnExiste As Boolean

blnExiste = False

For Each item In arrItensFornecidos

For idxFornecidos = 0 To lsbFornecidos.Items.Count - 1

If item.ToString() = lsbFornecidos.Items(idxFornecidos).ToString() Then
blnExiste = True
Exit For
End If

Next

If Not blnExiste Then
lsbCadastrados.Items.Add(item.ToString())
Else
blnExiste = Not blnExiste
End If

Next

End Sub

End Class


Existe um jeito no qual o processamento fica mais rápido? ... bom... não tenho ideia no momento...

[][ô]s,
Tunusat.
DJHASSELMANN 26/02/2017 00:19:44
#471947
Valeu era isto que eu estava precisando, obrigado!
Faça seu login para responder