如何将Datagridview的索引设置为0

时间:2019-05-28 06:23:24

标签: vb.net

如何将DataGridView的索引设置为0?

我开发了一个药房软件,希望通过添加新行将TextBoxes中的值添加到DataGridView中。它可以正常工作,但问题是当我使用此代码清除DataGridView的值时

class TeacherStatisticPost(generics.RetrieveAPIView):
    permission_classes = (ClassOwnerPermission, )
    queryset = ClassRoom.objects.all()
    lookup_field = "id"
    lookup_url_kwarg = 'classRoom_id'

    def get(self, request, *arg, **kwargs):
        klass = self.get_object()
        response ={
             'class_room_grade' : klass.grade,
              'class_room_name' : klass.name,
             }
        return JsonResponse(response, safe=False)

然后当我尝试上一个过程时,它在VB.NET中显示此错误

  

索引超出范围,必须为非负且小于集合的大小。参数名称:索引

代码:

dgvSoldMedicineInfo.Rows.Clear()

1 个答案:

答案 0 :(得分:0)

在那种情况下,实际上没有指向rowcounter变量的含义,并且反复使用dgvSoldMedicineInfo.Rows(rowcounter)是一种不好的形式。正确的方法如下:

Dim rowIndex = dgvSoldMedicineInfo.Rows.Add()
Dim row = dgvSoldMedicineInfo.Rows(rowIndex)
Dim cells = row.Cells

cells("ColumnBarcodeNo").Value = txtBarcodeNo.Text
cells("ColumnName").Value = dgvSale.CurrentRow.Cells(2).Value
'etc.

也就是说,当Add方法被重载并可以接受所有单元格值时,为什么要这样做?

dgvSoldMedicineInfo.Rows.Add(txtBarcodeNo.Text,
                             dgvSale.CurrentRow.Cells(2).Value,
                             ...)