WPF с PRISM: ресурс некоторых типов не найден при запуске приложения, если другие ресурсы других типов не включены - PullRequest
0 голосов
/ 07 марта 2020

Я обнаружил проблему с ресурсами в файле App.xaml приложения Microsoft PRISM (Prism.Wpf 7.2 и Prism.Unity 7.2) WPF MVVM (. NET Framework 4.7.2 или Do tnet Core 3.1) , Если App.xaml включает в себя только определенные типы (не сейчас, какие именно), такие как BooleanToVisibilityConverter в качестве ресурса:

<unity:PrismApplication x:Class="WPF_XAML_Resource_Test.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:unity="http://prismlibrary.com/">
    <Application.Resources>
        <BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/>
    </Application.Resources>

Дизайнер не жалуется при включении ресурса в указанный ключ:

<Button ... Visibility="{Binding DeleteButtonIsVisible, Converter={StaticResource BooleanToVisibilityConverter}, Mode=OneWay}">

Но когда я запускаю приложение, я получаю сообщение об ошибке «Исключение: не удается найти ресурс с именем« BooleanToVisibilityConverter ». Имена ресурсов чувствительны к регистру».

Взлом, чтобы включить какой-то другой тип, например SolidColorBrush в App.xaml:

<SolidColorBrush x:Key="Dummy" Color="Red"/>

Тогда исключение не выдается.

Может кто-нибудь объяснить, почему я получаю исключение, если я не включаю пустышку SolidColorBrush ресурс?

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