Vamos usar o SelectedIndexChanged do ListView para atualizar seus campos.Você provavelmente saiba como chegar nele, mas só para deixar documentado. Selecione seu ListView, na janela de propriedades, click no "raiozinho" na toolbar. Encontre o evento SelectedIndexChanged e dê um duplo click nele. Aí, codifique algo como o exemplo abaixo:
Private Sub MeuListView_SelectedIndexChanged(ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles MeuListView.SelectedIndexChanged
'-- Verifica se há alguma linha selecionada
If Me.MeuListView.SelectedItems.Count = 0 Then
Exit Sub
End If
'-- Já que o membro (tag) para cada row é a primary key (set a primary key
'de sua tabela), nós podemos usar este valor para navegar diretamente o
'nosso BO. Esta Tag foi setada no PopulationDataSourceSettings do ListView
Me.MeuBO1.NavigateToPrimaryKey(CType(Me.MeuListView.SelectedItems(0).Tag, Integer))
End Sub
Quando usamos o NavigateToPrimaryKey, ele navega até a row do seu business object e faz um refresh de todos bound controls do seu form.
Deu para pegar a idéia? Se não, dá um toque e tentamos de novo.