2009-09-15 30 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}"/>