从gridview中删除行,并从绑定中删除项目

时间:2017-09-20 03:55:43

标签: c# winforms datagridview delete-row

我用这样的方式填充了一个GridView:

   Ingreso I = new Ingreso();
    I.ID_Producto = ID_Producto;
    I.Producto = cmb_producto.Text;
    I.ID_Productor = ID_Productor;
    I.Productor = cmb_productor.Text;
    I.Fecha_Ingreso = Fecha.Value.Date;
    I.Cantidad = Convert.ToInt16(txt_cantidad_ingresada.Text);
    I.Precio_Unitario = Convert.ToDecimal(txt_precio_unitario.Text);
    I.Descripcion = txt_descripcion.Text;

    Ingresos.Add(I);
    ListadeIngresos = new BindingList<Ingreso>(Ingresos);
    BindingSource source = new BindingSource(ListadeIngresos, null);
    Grid_Ingreso.DataSource = source;

然后用户需要删除已添加的行,我正在尝试这种方式:

 private void Grid_Ingreso_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
        {
            int index = e.Row.Index;
            Ingresos.RemoveAt(index);
            ListadeIngresos.RemoveAt(index);
            BindingSource source = new BindingSource(ListadeIngresos, null);
            Grid_Ingreso.DataSource = source;
        }

我的问题是该行从gridview和对象(Ingresos)中删除了三次。这就像事件发射3次,但是当我调试时我只看到它进入一次。为什么会这样?

由于

0 个答案:

没有答案