private void vid_view_KeyDown(object sender, KeyEventArgs e) { //задать количество часов для предмета if (e.KeyCode == Keys.Return) { if (current_lvi == null) { return; } inputbox ib = new inputbox( "Введите в окно редактирования количество часов\n" + "по указанному виду занятия.\n\nЦелая часть числа отделяется от дробной знаком 'запятая' (,).", current_lvi.Text, current_lvi.SubItems[1].Text, "Кол-во часов:"); ib.is_numeric = true; DialogResult res; do { res = ib.ShowDialog(); if (res == DialogResult.Cancel) { break; } }while (res != DialogResult.OK); if (res == DialogResult.OK) { double ch = Convert.ToDouble(ib.textBox1.Text); if (ch <= 200.0 && ch >= 1.00) { current_lvi.SubItems[1].Text = string.Format("{0:F2}", ch); } else { MessageBox.Show("Введенно недопустимое количество часов [допустимое значение: от 1 до 200]", "Ошибка ввода", MessageBoxButtons.OK, MessageBoxIcon.Error); } } ib.Dispose(); } //удалиить вид занятия из предмета if (e.KeyCode == Keys.Delete) { exclude_button_Click(sender, new EventArgs()); } }
public void set_chas() { //поменять количество часов для данного занятия int c = rsp.Col; int r = rsp.Row; int num = ids[(r - 1) * N + c - 1]; DataRow[] gr_row = local_rasp.Select(" id = " + num.ToString()); if (c == 0 || r == 0) { return; } if (rsp[r, c] == null) { return; } inputbox ib = new inputbox( "Введите в окно редактирования количество часов\n" + "по указанному виду занятия.\n\nЦелая часть числа отделяется от дробной знаком 'запятая' (,).", gr_row[0][7].ToString(), gr_row[0][3].ToString(), "Кол-во часов:"); ib.is_numeric = true; DialogResult res; double ch = 0.0; do { res = ib.ShowDialog(); if (res == DialogResult.Cancel) { return; } }while (res != DialogResult.OK); if (res == DialogResult.OK) { ch = Convert.ToDouble(ib.textBox1.Text); if (!(ch <= 200.0 && ch >= 0.0)) { MessageBox.Show("Введенно недопустимое количество часов [допустимое значение: от 1 до 200]", "Ошибка ввода", MessageBoxButtons.OK, MessageBoxIcon.Error); ib.Dispose(); return; } } string q = "update rasp set kol_chas = @CHAS where id = @ID"; SqlCommand cmd = new SqlCommand(q, main.global_connection); cmd.Parameters.Add("@CHAS", SqlDbType.Float).Value = ch; cmd.Parameters.Add("@ID", SqlDbType.Int).Value = num; try { cmd.ExecuteNonQuery(); } catch (Exception exx) { MessageBox.Show("Ошибка при передаче данных. Повторите операцию позднее.", "Ошибка данных", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } changed = true; rsp[r, c] = gr_row[0][5].ToString() + "\n" + gr_row[0][4].ToString() + " | " + string.Format("{0:F2}", ch) + " ч."; ib.Dispose(); }