I can't get the data to print from my .txt to my textbox? I really don't understand why. Here is what I have
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
const int ROWS = 5;
const int COLS = 5;
double[,] iArray = new double[ROWS, COLS];
string[] nArray = new string[5];
double[] finalGradesArray = new double[5];
const double TOTAL = 4;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
PopulateArrays();
Calculations();
//read Names.txt file
ReadFile();
}
private void ReadFile()
{
//read namesFile and show it on listbox
StreamReader namesFile;
int index = 0;
namesFile = File.OpenText("Names.txt");
while (!namesFile.EndOfStream)
{
//studentsNamesListBox.Items.Add(namesFile.ReadLine());
nArray[index] = namesFile.ReadLine();
studentsNamesListBox.Items.Add(nArray[index]);
index++;
}
namesFile.Close();
}
private void PopulateArrays()
{
StreamReader scoresFile; //to read the file
string line; //to hold a line from the file
string[] dArray; //to hold the value from text file
int i;
int j;
/* double[,] fArray = new double [5, 5];
double[,] total = new double[5, 5];
//to hold the iArray 2-D
double newArray;
*/
//open Scores.txt file
scoresFile = File.OpenText("Scores.txt");
//read the lines from the file
for (i = 0; i < iArray.GetLength(0); i++)
{
line = scoresFile.ReadLine(); //read a line from the file
dArray = line.Split(','); //split "," out of the strings
for (j = 0; j < 5; j++)
{
iArray[i, j] = double.Parse(dArray[j]); //= double.Parse(dArray[j]); //the new 1-D array will be [0] = 1.0 [1] = 0.8 [2] = 0.9... and so on ...
}
}
scoresFile.Close();
//call calculations method so the data from iArray is calculated
//double[] tempArray = Calculations(iArray);
}
private void Calculations()
{
int i;
int j;
double average = 0;
for (j = 0; j < 5; j++) //sum up the column only
{
for (i = 0; i < 5; i++)
{
if (i != j) //ignore student own evaluation
{
average += iArray[i, j]; //Like this!!
//max number is 1
//accumulate with values
}
}
average = (average / TOTAL); //divide by number of column excluding his own for average
finalGradesArray[j] = average; //store the average in the grade array
}
}
private void button1_Click(object sender, EventArgs e)
{
try
{
//when click calculate button evaluation average grade * project grade = averagegradetextlabel
double projectGrade;
double averageStudent;
int index;
projectGrade = double.Parse(projectGradeTextBox.Text);
if (studentsNamesListBox.SelectedIndex != -1)
{
index = studentsNamesListBox.SelectedIndex;
averageGradeStudentLabel.Text = (projectGrade * finalGradesArray[index]).ToString();
/*
for (index = 0; index < 5; index++)
{
averageStudent = projectGrade * finalGradesArray[index];
averageGradeStudentLabel.Text = averageStudent.ToString("p2");
}
*/
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void studentsNamesListBox_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
this.Close();
}
}
}