I'm assuming this is WinForms. I think what you should be doing is handling the SelectedIndexChanged event of the ListBox to set your label's text, this would be easier to implement than a timer.
In your form's constructor you could have the following:
ListBox1.Items.Clear()
ListBox1.Items.Add(New KeyValuePair(Of Integer, String)(0, "Value-1"))
ListBox1.Items.Add(New KeyValuePair(Of Integer, String)(1, "Value-2"))
ListBox1.DisplayMember = "Value"
ListBox1.ValueMember = "Key"
and then you could have a method to handle the SelectedIndexChanged event as follows:
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
If ListBox1.SelectedItem IsNot Nothing Then
Label1.Text = ListBox1.SelectedItem.Value
End If
End Sub