У меня есть enum, объявленный следующим образом:
public enum DirectionTypes
{
IN = 2,
OUT = 1
}
Это перечисление используется в пользовательских элементах управления, где мне нужно указать в XAML, в каком направлении должен работать элемент управления. Я создал свойство зависимости для каждого пользовательского элемента управления следующим образом:
public static readonly DependencyProperty DirectionTypeProperty =
DependencyProperty.Register(
"DirectionType",
typeof(DirectionTypes),
typeof(TransactionGrid), new PropertyMetadata(DirectionTypes.IN));
public DirectionTypes DirectionType
{
get
{
return (DirectionTypes)GetValue(DirectionTypeProperty);
}
set
{
SetValue(DirectionTypeProperty, value);
}
}
Затем я могу использовать пользовательский элемент управления следующим образом:
<local:TransactionGrid x:Name="theGrid" DirectionType="OUT" />
Я могу нормально запустить программу. Проблема заключается в том, что DirectionType = "OUT" вызывает ошибку intellisense в Visual Studio 2015. Я получаю синие волнистости под свойством XAML, и мой конструктор не показывает предварительный просмотр, говоря вместо этого «Неверная разметка». Ошибка говорит Конвертер типов для DirectionTypes не поддерживает преобразование из строки.
Чего мне не хватает, что позволит правильно проанализировать XAML.