DataContextとBinding-簡単なサンプル
簡単にDataContextとBindingの関係を理解する為に、全く役に立たないサンプルを交えて説明していきます。 
DataContext(データコンテキスト)は、FrameworkElement?、FrameworkContentElement?に存在するオブジェクト型を格納するプロパティです。
これに対してBinding(バインディング)を行い、DataContextのデータ(プロパティ)とBindingするターゲット・プロパティを指定して、適切な値を利用します。
言葉での説明より、実際にコーディングしてみる方がいいので、コードを見ながら説明していきます。説明には、Customerというありふれたクラスを利用します。
サンプルで利用するCustomerクラス bookmark
説明するまでもないですが、FirstName?(姓)、LastName?(名)プロパティを持つ単純なクラスです。
このクラスをメインのデータとして利用していきます。
画面レイアウト bookmark
簡単なサンプルとして、単純にテキストボックスにBindingを行い、表示するプログラムを作成します。
画面レイアウトは以下のようにします。

上記画面レイアウトのXAMLは、以下のようになっています。
コード bookmark
では、txtFirstName?、txtLastName?にデータが表示されるように、DataContextの設定とBindingの設定をコードに記述します。
記述する場所は、ウインドウがロードされた時に発生するLoadedイベントに記述します。
11行目でDataContextにCustomerクラスを設定しています。ここでのMe.DataContextとは、Window.DataContextを指しています。
13、16行目で、TextプロパティにBindingし、データが表示されるようにします。
ここでは、コードよりBindingを行っていますが、直接XAMLのタグ内に記述する事もできます。
タグでのBinding bookmark
21、26行目のText="{Binding Path=xxxxxxx}"でBindingを行っています。
ここで疑問に思えるのが、Binding時に対象となるCustomerクラスのプロパティしか指定していない点です。これについては、DataContextを参照して下さい。