2010-05-08 46 views
0

在(在WPF) 我的MVVM應用我有兩個視圖和我想將標籤的上下文中結合在我的文本框的值(在另一個視圖)值 - WPF/MVVM

SelectorView.xaml包含此控制: <TextBox x:Name="tbArt" value="XX"/>

DescriptionView.xaml包含此控制: <label context="{binding on the tbArt value????}">

這是可能的情況下直接將在代碼behing和的ViewModels? 標籤是否會自動刷新?

謝謝!

+1

這些視圖是將「頁面」分開還是將它們控制在同一頁面中? – 2010-05-08 15:48:00

+0

他們控制在同一頁面 – Tchoupi 2010-05-08 18:42:39

回答

0

如果兩個控件數據綁定到相同的屬性,則標籤將在值更改時進行刷新。確保屬性觸發屬性在更改時發生更改。

ex: in XAML。

<TextBox x:Name="tbArt" value="{Binding Path=TheProperty, UpdateSourceTrigger=PropertyChanged}"/> 
<label context="{binding TheProperty}"> 

在文本框中請確保您使用:

UpdateSourceTrigger =的PropertyChanged

。否則該屬性將不會改變,直到焦點從文本框移開。

0

如果你想要做的是在同一個窗口/頁在另一個控件中顯示一個控件的值,你可以做到以下幾點:

<TextBox x:Name="tbArt" Text="XX" /> 
<Label Content="{Binding Path=Text", ElementName=tbArt}" /> 

這將的文本的內容綁定將標籤貼到名爲「tbArt」的控件上。您也可以對控件的其他屬性執行相同的操作。

例如,

<TextBox x:Name="tbArt" Text="XX" Width=33 /> 
<Label Content="{Binding Path=Width, ElementName=tbArt}" /> 

將在標籤顯示在文本框中 「XX」 和 「33」。