从datagridview中删除重复的行c#

时间:2015-04-14 20:24:27

标签: c# datagridview datatable duplicates

我想要独特的行。循环应该检查datagridview中的所有行,看它是否与文本框中的文本匹配,如果没有,它会将文本框中的值添加到datagridview。 我的问题:只有第一行有效,循环只遍历datagridview中的第一行,为什么不继续通过其他行?

private void laggtill_Click(object sender, EventArgs e)
        {

            bool dublett = false;           
            foreach (DataGridViewRow r in dataGridView1.Rows)
            {                              
                if(r.Cells[0].Value.ToString() == txtNamn.Text)  // txtnamn is a textbox
                {
                    dublett = true;
                    MessageBox.Show("Varan finns redan, gör om!");                    
                }
                break;
            }
            if(dublett == false)
            {
                DataRow dr;
                dr = dt.NewRow();
                dr["Namn"] = txtNamn.Text;
                dr["Pris"] = txtPris.Text;
                dr["Varunummer"] = txtVNr.Text;
                dr["Saldo"] = txtSaldo.Text;
                dt.Rows.Add(dr);
                dataGridView1.DataSource = dt.DefaultView;
                clearRow();
                spara();                
            }
            txtNamn.Text = "";
            txtPris.Text = "";
            txtSaldo.Text = "";
            txtVNr.Text = "";            
        }

1 个答案:

答案 0 :(得分:1)

if(r.Cells[0].Value.ToString() == txtNamn.Text)  // txtnamn is a textbox
{
    dublett = true;
    MessageBox.Show("Varan finns redan, gör om!");    
    break;                
}

移动休息;里面的if。