locked
Ресурсы в portable (WinRT, WP7) библиотеке RRS feed

  • Вопрос

  • Доброго времени суток. Пишу два приложения одно для WinRT, второе для Windows Phone 7(8). Многие строковые ресурсы в обоих приложениях одинаковые, потому для того, чтобы не плодить лишние файлы, завел resx файл ресурсов в Portable библиотеке. Из кода получить доступ к ресурсам не проблема, в XAML же ресурсы не подтягиваются.

    <TextBlock x:Name="pageTitle" x:Uid="ApplicationTitle" />

    В ресурсах:

    ApplicationTitle.Text           
    My application
    В чем проблема? Или какой выход можно найти, кроме создания get проперти для нужного ресурса и байндинга на него?

    [Блог] [Twitter]


    • Изменено Ihar Maiseyeu 22 августа 2013 г. 20:40
    22 августа 2013 г. 20:39

Ответы

  • Я делаю так

    1. Создаем класс:

    public class LocalizedStrings
        {
            private readonly AppResources _localizedResources = new AppResources();
            public AppResources LocalizedResources
            {
                get
                {
                    return _localizedResources;
                }
            }
        }

    2. добавляем в App.xaml строки:

     <Application.Resources>
            <local:LocalizedStrings xmlns:local="clr-namespace:<ваше пространство имен>" x:Key="LocalizedStrings"/>
        </Application.Resources>

    3. Биндим

    <TextBlock Text="{Binding LocalizedResources.PanoramaItem1Header, Mode=OneWay, Source={StaticResource LocalizedStrings}}"

    • Предложено в качестве ответа V.A.Zolotov 22 августа 2013 г. 21:43
    • Помечено в качестве ответа Ihar Maiseyeu 24 августа 2013 г. 18:36
    22 августа 2013 г. 21:42