我有一个自定义控件,里面有一个Enum属性:
public enum paradigms { P300, CPS };
private paradigms _selectedParadigm = paradigms.P300;
public paradigms SelectedParadigm
{
get { return _selectedParadigm; }
set { SelectedParadigm = value; }
}
如果我将此控件添加到我的窗口,在属性窗口中我可以看到此属性,如果我单击它我可以看到可用选项(CSP和P300)但是只要我选择一个,Visual Studio就会崩溃没有有用的信息。
我尝试将私有变量初始化为= private paradigms _selectedParadigm = new paradigms();
,但它会导致Visual Studio崩溃。
我尝试过使用其他属性,或者添加一个bool,我得到一个很好的CheckBox,我可以检查并取消选中,没有任何崩溃。
在使用枚举时,任何想法为什么Visual Studio会以这种方式崩溃?
注意:VS 2010 Profesional
答案 0 :(得分:1)
public paradigms SelectedParadigm
{
get { return _selectedParadigm; }
set { SelectedParadigm = value; }
}
该代码导致StackOverflowException
- 这将导致进程失效。将该代码更改为:
public paradigms SelectedParadigm
{
get { return _selectedParadigm; }
set { _selectedParadigm = value; }
}