@santrajas: By putting the property name in the XAML, you set everything up beforehand. The actual binding doesn't take place until you set the itemssource/datacontext of the ComboBox in the code-behind.

While you can do it all in code, as you're finding out it's pretty complex and really not the way Silverlight was designed to be used. Is this a strict requirement?

<TextBlock Text="{Binding MyTextPropertyName}" />

Sub BindStuff()
myComboBox.ItemsSource = myDataSource
End Sub