private void vcal_button_Click(object sender, EventArgs e) { if (vup_comboBox.Text == "" || vdown_comboBox.Text == "" || vinput_exp_textBox.Text == "") { MessageBox.Show("函数输入/上界/下界 不可为空!"); return; } try { string up = vup_comboBox.Text; string down = vdown_comboBox.Text; string funExp = vinput_exp_textBox.Text; double precision = 0.001 * Math.Pow(10, -v_trackBar.Value); Extremum extremum = new Extremum(precision); extremum.ExtremumCal(double.Parse(up), double.Parse(down), funExp, out double minVal, out double maxVal); vminoutput_textBox.Text = minVal.ToString("f20"); vmaxoutput_textBox.Text = maxVal.ToString("f20"); log.Enqueue(new Log(minVal)); if (log.Count > 5) { log.Dequeue(); } log.Enqueue(new Log(maxVal)); if (log.Count > 5) { log.Dequeue(); } input_bindingSource.DataSource = log.ToList(); input_bindingSource.ResetBindings(false); input_bindingSource2.DataSource = log.ToList(); input_bindingSource2.ResetBindings(false); vup_comboBox.Text = up; vdown_comboBox.Text = down; } catch (Exception error) { MessageBox.Show(error.Message); } }