private void btn_enter_Click(object sender, EventArgs e) { if (currentServer == Program.system.NumberOfServers) { MessageBox.Show("Already entered Time Distributions of all servers."); return; } MultiQueueModels.Server server = new MultiQueueModels.Server(); decimal cum_prob = 0; for (int r = 0; r < dg_service.Rows.Count - 1; r++) { int time = int.Parse(dg_service.Rows[r].Cells[0].Value.ToString()); decimal prob = decimal.Parse(dg_service.Rows[r].Cells[1].Value.ToString()); MultiQueueModels.TimeDistribution ts = new MultiQueueModels.TimeDistribution(); ts.Time = time; ts.Probability = prob; decimal minRange; if (r == 0) { minRange = 1; } else { minRange = cum_prob * 100 + 1; // minRange = old cum + 1 } ts.MinRange = decimal.ToInt32(minRange); cum_prob += prob; ts.CummProbability = cum_prob; decimal maxRange = cum_prob * 100; //maxRange = current cum ts.MaxRange = decimal.ToInt32(maxRange); server.TimeDistribution.Add(ts); } server.ID = currentServer + 1; server.FinishTime = 0; server.TotalWorkingTime = 0; server.NumberOfCustomers = 0; Program.system.Servers.Add(server); currentServer++; dg_service.Rows.Clear(); }
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { ind = int.Parse(comboBox1.SelectedItem.ToString()); MultiQueueModels.Server ser = Form1.sys.Servers[ind - 1]; var series = new Series("Server " + comboBox1.SelectedItem.ToString()); // Frist parameter is X-Axis and Second is Collection of Y- Axis int[] x; int[] y; x = new int[ser.x.Count() + 5]; y = new int[ser.y.Count() + 5]; for (int i = 0; i < ser.x.Count(); i++) { x[i] = ser.x[i]; y[i] = ser.y[i]; } series.Points.DataBindXY(x, y); chart1.Series.Clear(); chart1.Series.Add(series); chart1.Series["Server " + comboBox1.SelectedItem.ToString()]["PointWidth"] = "1"; }