Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 如何为DataGridView创建自增列?_Asp.net_Vb.net_Datagridview_Webforms - Fatal编程技术网

Asp.net 如何为DataGridView创建自增列?

Asp.net 如何为DataGridView创建自增列?,asp.net,vb.net,datagridview,webforms,Asp.net,Vb.net,Datagridview,Webforms,我需要向DataGridView添加一个自增列。每次向网格中添加一行时,我都希望增加No列 我的表单加载代码: 添加按钮的DataGridView按钮单击事件: Private Sub btnAgregar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAgregar.Click Dim articulo, cantidad As Integer Dim precio,

我需要向DataGridView添加一个自增列。每次向网格中添加一行时,我都希望增加No列

我的表单加载代码:

添加按钮的DataGridView按钮单击事件:

Private Sub btnAgregar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAgregar.Click

    Dim articulo, cantidad As Integer
    Dim precio, total1 As Double
    Dim i As Integer = 0

    articulo = txtArticulo.Text.Trim()
    cantidad = txtCantidad.Text.Trim()
    precio = txtPrecio.Text.Trim()
    total1 = txtPrecio.Text.Trim()

    'Agrego Linea a DataGridView
    Dim row As String() = New String() {1, articulo, "No disponible", cantidad, precio, total1}
    DataGridView1.Rows.Add(row)

End Sub
我怎样才能做到这一点

Private Sub btnAgregar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAgregar.Click    
    Dim LastIndex As Integer = DataGridView1.Rows.Count - 1
    Dim LastNo As Integer = Integer.Parse(DataGridView1.Rows(LastIndex).Cells(0).Value)
    Dim NewNo As String = (LastNo + 1).ToString()

    Dim row As String() = New String() {NewNo, txtArticulo.Text, "No disponible", txtCantidad.Text, txtPrecio.Text, txtPrecio.Text}
    DataGridView1.Rows.Add(row)
End Sub

但是,请注意:如果此视图是从真实的数据库表加载的,则几乎总是希望依赖数据库生成ID值的能力。否则,这将是一个巨大的竞争环境,等待着爆发。

纯英语网站也是如此-请尊重网站的规则,或者翻译你的问题,包括标题!翻译成英语,或者将其发布在网站上。您确定这与asp.net有关吗?DataGridView1非常可疑。如果这实际上是DataGridView WinForms,请在e.ColumnIndex或列名与计数器列匹配时,使用CellFormatting事件设置e.Value=e.RowIndex+1。您还可以处理RowPostPaint事件,并在RowHeader中绘制一个累进数字。如果您使用DataTable作为数据源,那么您可以直接向网格添加一行,因此,不。。。但您可能希望:,您可以添加一个AutoIncrementStep=1的AutoIncrementColumn,请启用选项Strict。这是一个由两部分组成的过程。首先,对于当前项目-在解决方案资源管理器中双击“我的项目”。选择左边的Compile。在“选项严格”下拉列表中,选择“启用”。第二,对于未来的项目-进入工具菜单->选项->项目和解决方案->VB默认值。在“选项严格”下拉列表中,选择“启用”。这将使您在运行时避免出现bug。
Private Sub btnAgregar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAgregar.Click    
    Dim LastIndex As Integer = DataGridView1.Rows.Count - 1
    Dim LastNo As Integer = Integer.Parse(DataGridView1.Rows(LastIndex).Cells(0).Value)
    Dim NewNo As String = (LastNo + 1).ToString()

    Dim row As String() = New String() {NewNo, txtArticulo.Text, "No disponible", txtCantidad.Text, txtPrecio.Text, txtPrecio.Text}
    DataGridView1.Rows.Add(row)
End Sub