private void fill( ) { TP = new TransportProblem(); TP.dilersCount = gridA.RowCount; TP.customersCount = gridB.RowCount; TP.dilers = new float[TP.dilersCount]; TP.customers = new float[TP.customersCount]; TP.transportationPrices = new float[TP.dilersCount, TP.customersCount]; try { for (int i = 0; i < TP.dilersCount; ++i) { TP.dilers[i] = Convert.ToInt32(gridA.Rows[i].Cells[0].Value); } for (int i = 0; i < TP.customersCount; ++i) { TP.customers[i] = Convert.ToInt32(gridB.Rows[i].Cells[0].Value); } for (int i = 0; i < TP.dilersCount; ++i) { for (int j = 0; j < TP.customersCount; ++j) { TP.transportationPrices[i, j] = Convert.ToInt32(gridC.Rows[i].Cells[j].Value); } } } catch (System.Exception ex) { MessageBox.Show("ex"); } }
private void btnOpen_Click(object sender, EventArgs e) { Stream myStream = null; OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.InitialDirectory = "D:\\"; openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"; openFileDialog1.FilterIndex = 1; openFileDialog1.RestoreDirectory = true; if (openFileDialog1.ShowDialog() == DialogResult.OK) { try { if ((myStream = openFileDialog1.OpenFile()) != null) { StreamReader SR = new StreamReader(myStream); String[] Sizes = SR.ReadLine().Split(' '); int Asize = 0, Bsize = 0; int.TryParse(Sizes[0], out Asize); int.TryParse(Sizes[1], out Bsize); String A = SR.ReadLine(); String B = SR.ReadLine(); String[] C = new String[Asize]; for (int i = 0; i < Asize; i++) { C[i] = SR.ReadLine(); } try { TP = new TransportProblem(Asize, Bsize, A, B, C); } catch (Exception exc) { MessageBox.Show(exc.Message); } } myStream.Close(); } catch (Exception ex) { MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message); } } nudA.Value = TP.dilersCount; nudB.Value = TP.customersCount; gridA.RowCount = TP.dilersCount; gridB.RowCount = TP.customersCount; gridC.ColumnCount = TP.customersCount; gridC.RowCount = TP.dilersCount; FillGrids(); }