我有一个自定义控件,并且在其中有一个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)变量初始化为= private paradigms _selectedParadigm = new paradigms();,但这会使Visual Studio崩溃。

我尝试了其他属性,或者添加了 bool(boolean) 值,然后我得到了一个不错的CheckBox,可以选中和取消选中它,而不会崩溃。

知道为什么Visual Studio在使用枚举时会以这种方式崩溃吗?

注意:VS 2010专业版

最佳答案

public paradigms SelectedParadigm
{
    get { return _selectedParadigm; }
    set { SelectedParadigm = value; }
}

该代码将导致StackOverflowException-这将降低进程。将该代码更改为:
public paradigms SelectedParadigm
{
    get { return _selectedParadigm; }
    set { _selectedParadigm = value; }
}

关于wpf - 编辑Enum属性(WPF)时Visual Studio崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20092101/

10-12 07:09