我的声明如下:
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"在Visual 2015中会导致intellisense错误。我在XAML属性下得到蓝色的squiglies,而我的设计器不会显示预览,而是说“无效标记”。错误说 DirectionTypes的类型转换器不支持从字符串转换.
我遗漏了什么,允许正确地解析XAML。
发布于 2018-08-30 18:58:37
显式地指定枚举值如下(假设DirectionTypes与本地名称空间相同):
<local:TransactionGrid x:Name="theGrid" DirectionType="{x:Static local:DirectionTypes.OUT}" />https://stackoverflow.com/questions/52103484
复制相似问题