のプロパティをTextBlock
に設定しようとしていますが、両方ともCodeBehind(xaml.cs)とViewModel
からバインドしています。TextBlock.Textの更新ViewModelとCodeBehind WPF
デフォルトでは、値は正常に動作するViewModelから読み込まれます。
XAML:ボタンのクリックイベントで
は、以下のことを試してみました
<TextBlock Name="test">
<TextBlock.Text>
<MultiBinding StringFormat=" ({0}, {1} of {2})">
<Binding Path="SeriesId" />
<Binding Path="SeriesName" />
<Binding Path="SeriesCalc" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
XAML.cs、
test.DataContext = "Not Available";
それとも
test.Text = "Not Available";
のViewModel:私はTextBlock
に値を代入しようとしているCommand
別のボタンで
。
SeriesId= GetIds();
SeriesName= GetNamesWithDE();
SeriesCalc= CalculateValue();
しかし、「Not Available
が」背後にあるコードから設定されると、それはViewModel
から上書きすることができませんでした。
どこが間違っていますか?
あなたは間違っていません。 datacontextをviewmodelから離して設定した場合、Textblockをもう更新することはできません... btwなぜ地獄でこれをしたいのですか? – blindmeis
XAMLでは、あなたの 'Text'プロパティへのバインディングを設定しています。後ろのコードでは 'Text'プロパティをリセットしています。したがって、あなたの束縛はうまくいく。 – zahir
@ zahir:ありがとう。 – iamCR