字段初始值设定项不能引用非静态字段方法或属性

时间:2014-01-06 22:03:34

标签: c#

public readonly int items = 3;
private System.Windows.Forms.TextBox[,] statsBonus = new System.Windows.Forms.TextBox[6, items];

它在“items”变量上给出了这个错误。如何制作它以便我可以使用一个名为“items”的变量,而不必在每个使用数字3的字段中写入3?

如果我想在代码上编辑它,我不想手动将数字3更改为其他内容。我想使用变量,所以我只需要改变变量来改变一切。

3 个答案:

答案 0 :(得分:3)

而不是使用readonly使用const

编辑:

如果两者之间存在更多讨论的差异,请查看this SO answer

答案 1 :(得分:2)

您必须使用

const int items = 3;

答案 2 :(得分:1)

一个选项

将其移至构造函数:

public ClassName()
{
  statsBonus = new System.Windows.Forms.TextBox[6, items];
}

更好的选择

items设为const