我查看了与此相似的另一个问题,但不太明白他们为解决问题所采取的措施。
我只是将值传递给public static int:
namespace ModNote
{
public partial class homeScreen : Form
{
public homeScreen()
{
InitializeComponent();
}
private void gamemodButton_Click(object sender, EventArgs e)
{
backgroundProgram.moduleNumber = 1;
this.Hide();
moduleScreen showForm = new moduleScreen();
showForm.Show();
}
这是初始化此变量的地方
namespace ModNote
{
#region // Setting up Variables
public class backgroundProgram
{
public static int moduleNumber;
}
#endregion
}
这里是错误的图片:http://puu.sh/opETJ/fb8152d164.png
三江源。
编辑:初始化字符串数组导致此错误,此数组的任何问题都被初始化? (moduleArray)
namespace ModNote
{
#region // Setting up Variables
public class backgroundProgram
{
public static int moduleNumber;
public static string[] noteArray;
public static string[] moduleArray = new string[7]
{ File.ReadAllText(@"ModulesFile\CGP1005M.txt"),
File.ReadAllText(@"ModulesFile\CMP1005M.txt"),
File.ReadAllText(@"ModulesFile\CMP1123M.txt"),
File.ReadAllText(@"ModulesFile\CMP1124M.txt"),
File.ReadAllText(@"ModulesFile\CMP1125M.txt"),
File.ReadAllText(@"ModulesFile\CMP1127M.txt"),
File.ReadAllText(@"ModulesFile\CMP1129M.txt")
};
}
#endregion
}
答案 0 :(得分:0)
如果抛出异常:
public static string[] moduleArray = new string[7]
{ File.ReadAllText(@"ModulesFile\CGP1005M.txt"),
File.ReadAllText(@"ModulesFile\CMP1005M.txt"),
File.ReadAllText(@"ModulesFile\CMP1123M.txt"),
File.ReadAllText(@"ModulesFile\CMP1124M.txt"),
File.ReadAllText(@"ModulesFile\CMP1125M.txt"),
File.ReadAllText(@"ModulesFile\CMP1127M.txt"),
File.ReadAllText(@"ModulesFile\CMP1129M.txt")
};
然后其中一行是抛出异常。从文件中读取时会出现各种原因 - 安全性,未找到,正在使用等等。
我建议将该逻辑移动到静态构造函数,以便您可以调试它以找到即时问题,然后添加更好的错误处理。
另一种选择是不读取静态构造函数中的所有数据,而是创建Initialize
方法或其他东西。静态构造函数中的异常通常很难处理。