2013-03-21 54 views
1

如何綁定我的TextBox的文本屬性從源讀取,但它會將其值存儲到不同的目標? 比方說 我有一個文本框,這是債券的路徑在CollectionViewSourcewpf源碼和目標綁定在兩個不同的路徑

<Window> 
    <Window.Resources> 
     <CollectionViewSource Source="{Binding Source={StaticResource ProgramView}, Path='FK_LevelList_ProgramList'}" x:Key="LevelLookupView" /> 
    </Window.Resources> 

    <TextBox Name="FeePerTermTextbox" Text="{Binding Source={StaticResource LevelLookupView}, Path='FeePerTerm', Mode=OneWay, StringFormat=c2}"/> 
</Window> 

當執行保存時,TextBox的值將存儲到另一種模式是從CollectionViewSource

感謝

不同

回答

0

我認爲這個有缺陷。如果源更新會發生什麼?文本框是否應該被覆蓋? 這個設計的原因是imho,UI應該將元素集的「特性」反映爲DataContext,因此我期望它包含我在模型或UI中給出的值。現在,當從文本框中接收到設置值時,沒有任何東西阻止您將viewmodel中的值寫入模型。

public class Redirecter 
{ 
    public string FileName 
    { 
     get{return mModel.FileName;} 
     set{mProxy.FileName = value;} 
    } 
} 

但是,這當然不會與INotifyPropertyChanged一起使用。我會用一種不同的方法。使用更能反映你的用戶體驗的模型。如果使用模型A的設置打開視圖填充此ui模型。如果現在保存該模型,請將每個屬性保存到模型B中。

相關問題