2009-03-01 10 views

答えて

17

あなたの質問からはいくぶん不明ですが、添付されたプロパティCanvas.LeftにバインドしてTextBoxに表示する方法を尋ねていると思います。私はあなたがTextBox以外のコントロールのためにそれを必要と仮定します。

<Canvas> 
    <TextBox x:Name="textBox" Text="{Binding ElementName=button, Path=(Canvas.Left)}" /> 
    <Button x:Name="button" Content="Press me" /> 
</Canvas> 

添付されたプロパティの角かっこに注意してください。

EDIT: 次を使用し、コードに相当するものを行うには:

Binding binding = new Binding(); 
binding.Source = button; 
binding.Path = new PropertyPath(Canvas.LeftProperty); 
textBox.SetBinding(TextBlock.TextProperty, binding); 
+1

サンプルコードのようにコードバインディングが機能しません。 3行目は のようになります。binding.Path = new PropertyPath(Canvas.Left); – Matze

+0

ageektrappedに感謝します。 しかし、私はコードビハインドごとに正確にC#で検索します。私はWPFごとの方法を知っています。 – Taladan

-3

はい、キャンバスには、左の特性を持っていません。これは、Canvas ContentのFrameworkItemの添付プロパティです。

<Canvas Width="100" Height="100"> 
    <TextBox Name="top" Canvas.Left="12"></TextBox> 
</Canvas> 
+2

これは全く質問に答えていません。 – trapicki

関連する問題