Использование ресурсных словарей в. NET Стандарт - PullRequest
0 голосов
/ 15 апреля 2020

Мне было интересно, как Ресурсные Словари должны использоваться с новым. NET Стандарт. Я хотел бы знать, как мы можем поместить Resic Dicitonary в стандартную библиотеку классов. NET, как это было сделано в библиотеках классов classi c. Net Framework и WPF.

Для пояснения в classi c. NET Framework У нас был бы словарь ресурсов, назовем его styles.xaml в библиотеке классов, чтобы его можно было использовать в нескольких приложениях.

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

</ResourceDictionary>

Затем приведенный ниже фрагмент кода будет упоминается в файле app.xaml приложения WPF примерно так:

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="pack://application:,,,/Common;component/styles.xaml"/>
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

Так что я ищу эквивалентный способ добиться этого в новом. NET Standard. Заранее спасибо.

1 Ответ

1 голос
/ 20 апреля 2020

Это может быть путь, который не может быть хорошим. Я сделал простой проект, чтобы проверить, сработало ли это. Использование URI типа «pack» приводит к ошибке компиляции: файл не найден. Но если я попытаюсь использовать абсолютный путь, он отлично работает как со StaticResource, так и с DynamicResource. (Это должно работать и с относительным путем).

Насколько я помню, это может иметь смысл, почему я не мог использовать некоторые стили Telerik с типом пути pack URI и должен был использовать относительный путь для этих стилей, тогда как я все еще мог бы использовать pack для классического. NET проекта. (Я могу ошибаться в этом, это просто наблюдение, основанное на этом проекте доказательства концепции)

(я пробовал с действием сборки, установленным на Page или Embedded Resource, оно работало с обоими, поэтому может что)

См. ниже.

Working proof of concept

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...