次のXamlを使用したMyUserControlがあります。
<TextBox Text="{Binding InputValueProperty}" />
MyUserControl.xaml.csには、次のものがあります。
public string InputValue
{
get { return (string)GetValue(InputValueProperty); }
set { SetValue(InputValueProperty, value); }
}
public static readonly DependencyProperty InputValueProperty =
DependencyProperty.Register("InputValueProperty", typeof(string),
typeof(MyUserControl));
MainWindow.xamlで、ユーザーコントロールを作成します。
<local:MyUserControl InputValue="My Input" />
後でMainWindow.xaml.csで、この文字列にアクセスしようとしています。MyUserControlのすべてのインスタンスはリストに含まれており、foreachを使用してそれらにアクセスします。
string temp = userControl.InputValue;
これは常にnullです。MainWindow.xamlで、ユーザーコントロールのテキストボックスに「入力」が表示されますが、そこから取得できないようです。