我想知道是否有人以前遇到过这个问题。我正在使用 C#、.NET 4.5 和 Visual Studio 2013。
我有一个自定义文本框,它基本上只是继承自标准 Windows Forms TextBox
。在其上,有如下属性:
public EnumName Property { get; set; }
EnumName
枚举定义如下:
[Flags]
public enum EnumName
{
Value1 = 1,
Value2 = 2,
Value3 = 3
}
当我在表单上使用自定义控件并将属性设置为 时Value3
,设计器实际上会:
control.EnumName = EnumName.Value1 | EnumName.Value2;
这可以。但是最近,当我向EnumName
(例如,Value4 = 9999
)添加一个新值时,设计师会改为这样做:
control.EnumName = EnumName.9999
有谁知道这背后的原因?这很令人沮丧。