Podrías usar un Timer que te vaya mostrando los elementos según un determinado intervalo de tiempo.
Código vb.net:
Ver originalPrivate indice As Int32
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
'La propiedad se cambió a True en tiempo de diseño.
Timer1.Interval = 1000 'Cada segundo mostrará los elementos en los label's
If indice < Me.ListBox2.Items.Count - 1 Then
Me.Label1.Text = Me.ListBox2.Items(indice).ToString()
End If
If indice < Me.ListBox1.Items.Count - 1 Then
Me.Label2.Text = Me.ListBox1.Items(indice).ToString()
End If
indice += 1
End Sub
Lo que hace es mostrar cada elemento en distintos labels, para que te avise si son iguales los elementos podrías validar los datos en el evento TextChanged del label 2.
Código vb.net:
Ver originalPrivate Sub Label1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label2.TextChanged
If Me.Label1.Text = Me.Label2.Text Then
MessageBox.Show("Registros iguales")
End If
End Sub
f
Es una solución un poco tramposa ya que si lo intentas mostrar mediante un for sólo lograrás ver el último registro por la rapidez con que se hace.
La opción más indicada creo que es usar subprocesos, quizá con el control
BackGroundWorker, pero no tengo ejemplos de eso :(.