Как добавить строку с моими текущими кодами
У меня есть форма с двумя gridview, в одной из которых отображаются результаты поиска .textbox, а в другой-выбранная строка из первого представления сетки . Затем строки во втором gridview сохраняются в базе данных вызова неоплаченных чеков.
Что я уже пробовал:
private void btnadd_Click(object sender, EventArgs e) { for (int i = dataGridView1.RowCount - 1; i <= 0; i++) { DataGridViewRow row = dataGridView1.Rows[i]; if (Convert.ToBoolean(row.Cells["selectrow"].Value = true)) { Formq pan = new Formq(); pan.ShowDialog(); string may = Formq.mark1; productBindingSource4.AddNew(); dataGridView2.Rows[dataGridView2.Rows.Count - 1].Cells[1].Value = dataGridView1.Rows[i].Cells[1].Value.ToString(); dataGridView2.Rows[dataGridView2.Rows.Count - 1].Cells[2].Value = dataGridView1.Rows[i].Cells[2].Value.ToString(); dataGridView2.Rows[dataGridView2.Rows.Count - 1].Cells[3].Value = dataGridView1.Rows[i].Cells[3].Value.ToString(); dataGridView2.Rows[dataGridView2.Rows.Count - 1].Cells[4].Value = dataGridView1.Rows[i].Cells[4].Value.ToString(); dataGridView2.Rows[dataGridView2.Rows.Count-1].Cells["quantity"].Value = may; int qu = Int32.Parse(dataGridView2.Rows[dataGridView2.Rows.Count - 1].Cells["quantity"].Value.ToString()); string pp = dataGridView2.Rows[dataGridView2.Rows.Count - 1].Cells[3].Value.ToString(); Double rpp = Double.Parse(pp); Decimal rrpp = (decimal)rpp; Decimal tp = rrpp * qu; dataGridView2.Rows[dataGridView2.Rows.Count - 1].Cells["tprice"].Value = tp + ".00"; Double sum = 0; for (int f = 0; f < dataGridView2.Rows.Count; f++) { sum += double.Parse(dataGridView2.Rows[f].Cells[6].Value.ToString()); } string msun = (sum.ToString()); libt2.Text = msun;
Затем его форма закрывается и создается динамическая кнопка. Когда я хочу обновить данные в unpaidchecks . Я использую это
private void btn_Click(object sender, EventArgs e) { this.Hide(); salesitems op = new salesitems(); op.Show(); int i = 0; Button btn = sender as Button; string btntext = btn.Text; kk.getunpaid(int.Parse(btn.Text)); op.dataGridView2.DataSource = kk.getunpaid(int.Parse(btn.Text)); foreach (var dy in kk.getunpaid(int.Parse(btn.Text))) { op.dataGridView2.Rows[i].Cells["quantity"].Value = dy.quantity.ToString(); op.dataGridView2.Rows[i].Cells["Tprice"].Value = dy.tprice.ToString(); i++; op.libtabsno.Text = dy.tabel_sno_.ToString(); op.libuser.Text = dy.user.ToString(); op.libtno.Text = dy.tabel_no_.ToString(); op.libt2.Text = dy.total.ToString()
Но проблема в том , что он не добавляет новую строку.
Этот код доза не работает когда
productBindingSource4.AddNew();
Нажата динамическая кнопка
Мне нужна помощь
Jo_vb.net
Вам нужна новая пустая строка ?
И я не вижу productBindingSource4.Конец света
Mandema
Да, поэтому в основном я использую .addnew (), чтобы добавить новую строку в источник привязки, а затем в gridview она привязана к источнику привязки
Jo_vb.net
Возможно, нам было бы легче, если бы у нас был полный код ваших личных Пустотников
С productBindingSource4.метод AddNew();
Появляется ли только пустая строка и никаких данных, или вы получаете ошибку или что-то еще?
Я думаю, что с BindingSource.AddNew() может работать только импорт из связанных текстовых полей.