Ресурс «BoolToInvertedBoolConverter» не может быть разрешен - PullRequest
0 голосов
/ 01 октября 2018

Я новичок в разработке Silverlight.Во время своей деятельности я столкнулся с ошибкой, о которой упоминал в заголовке этого поста.Моя основная цель - всплывающее окно выбора даты при нажатии кнопки.

 <ToggleButton  x:Name="TogglePopupButton" HorizontalAlignment="Right" Height="26" VerticalAlignment="Center" Grid.Column="1" Style="{StaticResource ToolIconToggleButtonStyle}" Width="26" 
               IsEnabled="{Binding ElementName=ToggledPopup, Path=IsOpen,Converter={StaticResource BoolToInvertedBoolConverter}}">

это .xaml

<UserControl
<xmlns:local="clr-namespace:US.Payment.Web.Modules.PaymentMachine.Utils">
<UserControl.Resources>
    <US_Payment_Web_Converters:GroupRowHeaderVisibilityConverter x:Key="GroupRowHeaderVisibilityConverter"/>
    <viewModel:ImportUSPViewModel x:Name="ViewModel"/>
    <local:AmountValuesConverter x:Name="AmountConverter"/>
    <local:BackgroundConverter x:Key="BackgroundConverter" />
    <local:BoolToInvertedBoolConverter  x:Key="BoolToInvertedBoolConverter " />
    <Style x:Key="CalendarDayButtonStyle1" TargetType="prim:CalendarDayButton">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="prim:CalendarDayButton">
                    <Grid Background= "{Binding Converter={StaticResource BackgroundConverter}, Path=Date}">
                        <ContentControl x:Name="Content" Margin="5,1,5,1" Content="{TemplateBinding Content}" />
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</UserControl.Resources>

Это файл BoolToInvertedBoolConverter.cs

 public class BoolToInvertedBoolConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        if (value is bool)
        {
            bool boolValue = (bool)value;
            return !boolValue;
        }
        else
            return false;
    }

    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        throw new NotImplementedException("ConvertBack() of BoolToInvertedBoolConverter is not implemented");
    }
}

1 Ответ

0 голосов
/ 01 октября 2018

Проблема в том, что вы случайно поместили символ пробела в значение x: Key при объявлении вашего ресурса.Удалите этот символ, и он будет работать.

x: Key = "BoolToInvertedBoolConverter" -> имеет пробел в конце, но должен быть

x: Key = "BoolToInvertedBoolConverter" -> без пробела.

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