カスタム MyControl があります:依存関係プロパティを持つ UserControl
string Text
XAML の MyControl 内に TextBox があります。
MyControlのText 依存関係プロパティを TextBoxの Text 依存関係プロパティにバインドしたいと考えています。
これを行う最善の方法は何ですか?MyControl の依存関係プロパティを子の依存関係プロパティに渡すように宣言できますか?
カスタム MyControl があります:依存関係プロパティを持つ UserControl
string Text
XAML の MyControl 内に TextBox があります。
MyControlのText 依存関係プロパティを TextBoxの Text 依存関係プロパティにバインドしたいと考えています。
これを行う最善の方法は何ですか?MyControl の依存関係プロパティを子の依存関係プロパティに渡すように宣言できますか?
最も簡単な方法はx:Name="root"
、ファイルのルートに属性を割り当ててからMyControl.xaml
、次のようなバインディングを使用することですTextBox
。
<TextBox Text="{Binding Text, ElementName=root}" />
( には自分の名前を指定できますroot
。)
ここでの私の答えは、これを達成する方法の良い例を詳しく説明しています。基本的に、コントロールはビュー モデルのプロパティにバインドされます。子ビュー モデルには、子コントロールへのバインドを有効にし、値を子のビュー モデルにプッシュできる依存関係プロパティがあります。例は Silverlight ですが、実装は WPF でも同じです。