2009-09-15 63 views
0

我是WPF的初學者,目前正在開發我的第一個應用程序。 對於這個項目我應該用這種方法在應用中添加本地化:WPF綁定到本地化的GetTranslation(字符串鍵)方法

[TranslationService.cs]

public class TranslationService 
{ 
     string language; 


     public TranslationService(string language) 
     { 
      this.language = language; 
     } 

    public string GetTranslation(string key) 
     { 
      var value = *select the value from database based on "key" and "language"* 
     return value; 
     } 
} 

我試圖找出我怎麼能在使用此getTranslation方法XAML以優雅的方式......但我很難過。

[SomePage.xaml]

.. 
<TextBlock Text="{Binding source="_translator" parameter="WelcomeMessage" }" /> 
.. 

我reallly嘗試使用WPF 2本書我已經和一些谷歌上搜索想出來的自己..但我得到:

我這樣的事情後,我失去了新的語法..

誰能幫助我回到正軌?

回答

1

如果使用MVVM模式,你可以把這個邏輯到您的視圖模型:

class MyViewModel 
{ 
    private readonly TranslationService translator_; 

    public string WelcomeMessageText 
    { 
     get { return translator_.GetTranslation("WelcomeMessage"); } 
    } 

    // ... 
} 

並綁定到在XAML:

<TextBlock Text="{Binding WelcomeMessageText}"/>