Привязка WPF к методу GetTranslation (строковый ключ) для локализации - PullRequest
0 голосов
/ 15 сентября 2009

Я новичок в WPF и сейчас работаю над своим первым приложением. Для этого проекта я должен использовать этот метод для добавления локализации в приложении:

[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" }" />
..

Я действительно пытался выяснить это сам, используя 2 книги WPF, которые у меня есть, и немного погуглив ... но я теряюсь в новом синтаксисе ..

Кто может помочь мне вернуться на правильный путь?

1 Ответ

1 голос
/ 15 сентября 2009

Если вы используете шаблон MVVM, вы можете поместить эту логику в вашу ViewModel:

class MyViewModel
{
    private readonly TranslationService translator_;

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

    // ...
}

И привязать к этому в XAML:

<TextBlock Text="{Binding WelcomeMessageText}"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...