【问题标题】:C# add selected row from one DatagridView to another and with second select add + quantityC#将选定的行从一个DatagridView添加到另一个,然后选择添加+数量
【发布时间】:2021-05-18 07:47:50
【问题描述】:

我在 Windowsform c# 中有两个 DatagridViews,其中一个我从数据库中选择了我所有的产品(Dgtv_artikelbestellung)并在那里展示。

另一个用于订购产品(dgv_bestellteArtikel, 我想如果我单击一个符号“+”,它会将所选行添加到另一个 DataGridView,如果我双击同一选定行,它应该在“Menge”列中的第二个 Datagridview ++1 中。到目前为止,我可以添加行,但如果我第二次添加相同的产品,它不会添加数量。 我怎样才能做到这一点?有人可以帮忙吗? 这里的样子: Datagridview demo 这是我的代码。

private void Dgtv_artikelbestellung_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            string tttts = "";
            bool gefunden = false;
            if (Dgtv_artikelbestellung.Rows.Count > 0 && Dgtv_artikelbestellung.SelectedRows.Count > 0)
            {
                for (int i = 0; i < Dgtv_artikelbestellung.SelectedRows.Count; i++)
                {
                    int indexvar = dgv_bestellteArtikel.Rows.Add();
                    dgv_bestellteArtikel.Rows[indexvar].Cells[0].Value = Dgtv_artikelbestellung.SelectedRows[i].Cells[0].Value.ToString();
                    dgv_bestellteArtikel.Rows[indexvar].Cells[1].Value = Dgtv_artikelbestellung.SelectedRows[i].Cells[1].Value.ToString();
                    dgv_bestellteArtikel.Rows[indexvar].Cells["Menge"].Value = Convert.ToInt32(dgv_bestellteArtikel.Rows[indexvar].Cells["Menge"].Value) + 1;
                    tttts=dgv_bestellteArtikel.Rows[indexvar].Cells["Menge"].Value.ToString();

                    if(tttts != null && tttts.ToString()== tttts)
                    {
                        gefunden = true;
                    }
                }
                
            } 

【问题讨论】:

  • 在代码执行该行之前…int indexvar = dgv_bestellteArtikel.Rows.Add();…代码应该检查所选项目是否已经在第二个网格中。如果是……那么您不想“添加”新行,而是要增加现有行。我还问,因为tttts 是一个字符串……tttts.ToString()== tttts 什么时候会是假的?

标签: c# datagridview


【解决方案1】:

看起来单元格的值已更改,但 DatagridView 控件未更新。尝试调用EndInit()方法。

【讨论】:

  • 是的,值会发生变化,所以每次我点击它都会在数量上添加一个 1,但它也会在第二个 Datagridview 中创建一个新行。我怎样才能使它在第一次点击时(或者如果它在行中不存在)然后它在第二次点击并且行存在时添加但是它不会添加新行并且每次点击只加一个数量“数量”列?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-17
  • 2017-11-30
  • 1970-01-01
  • 2011-10-09
  • 1970-01-01
相关资源
最近更新 更多