ArrayList не то же самое, что Array, и если вы используете .Net 2.0 или более поздние ArrayList evil .
Что касается причины, по которой это не удается: ваш массив адресов ограничен функцией Reports_Load (). Вы хотите переместить его на уровень класса и объявить как List<string>
.
Другой вариант, если вы действительно хотите массив - использовать метод класса файлов .ReadAllLines()
.
private string[] status;
private void btnCompleted_Click(object sender, EventArgs e)
{
for (int i = 2; i < status.Length; i++)
{
if (status[i] == "Complete")
lstReports.Items.Add(status[i-2]);
}
}
private void Reports_Load(object sender, EventArgs e)
{
status = File.ReadAllLines("percent.txt");
}