Я получаю следующую ошибку:
Свойство 'Resources' установлено несколько раз.
Вот мой XAML:
<UserControl.Resources>
<!--Resource dictionaries for framework stuff-->
<ResourceDictionary>
<Style x:Key="MultiLineTextBox" TargetType="TextBox">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="TextWrapping" Value="WrapWithOverflow"/>
</Style>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/View;component/Common/ResourceDictionary.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
<!--Convertors needed for proper display-->
<c:CollapsedIfNegative x:Key="CollapseIfNegative"/>
<c:VisibleIfNegative x:Key="MakeVisibleIfNegative"/>
<c:ErrorCodeToString x:Key="ConvertErrorCodeToString"/>
</UserControl.Resources>
В .Свойство Resources
в Xaml продумано: оно имеет тип ResourceDictionary
, но, если вы явно не поместите тег
вокруг его содержимого, компилятор волшебным образом примет его за ты. Вот почему обычно можно просто положить кисти прямо в разметку.
Однако вы начали с добавления своего собственного ResourceDictionary
- который, как я подозреваю, предотвратил это автоматическое поведение - и теперь компилятор думает, что вы пытаетесь установить более одного значения. Если вы переписываете так, вы должны получить результат, который вам нужен:
<UserControl.Resources>
<!--Resource dictionaries for framework stuff-->
<ResourceDictionary>
<!--Convertors needed for proper display-->
<!-- move this INSIDE the ResourceDictionary tag -->
<c:CollapsedIfNegative x:Key="CollapseIfNegative"/>
<c:VisibleIfNegative x:Key="MakeVisibleIfNegative"/>
<c:ErrorCodeToString x:Key="ConvertErrorCodeToString"/>
<Style x:Key="MultiLineTextBox" TargetType="TextBox">
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="TextWrapping" Value="WrapWithOverflow"/>
</Style>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/View;component/Common/ResourceDictionary.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
На самом деле, просто скопировать ваш XAML и вставить его в мои собственные сборки UserControl (при условии, что я добавлю классы конвертера, на которые есть ссылки).
Вы видите другие ошибки в своем списке ошибок или это единственная? Иногда, если возникает другая ошибка (например, неспособность найти ресурс), это может привести к возникновению другой ошибки компиляции.