DataGridView Cell更新

时间:2014-05-15 19:24:07

标签: vb.net datagridview datagridviewrow

我在vb.net工作并尝试更新dgv以列出客户名称而不是ID。我已经拥有了所有函数来获取id给出的客户名称,所以这不是什么大问题。我的问题是,当我加载DataGridView时,它只会选择id。

理想情况下,我想让它在加载时拉出名称,但是我一直在尝试的是在它加载之后运行它

For Each row As DataGridViewRow In dgvPhones.Rows
        Dim customerID As String = ""
        Dim customerName As String

        Try
            customerID = row.Cells("Customer").Value.ToString
        Catch ex As Exception

        End Try

        customerName = CCCustomer.SelectByID(customerID).FirstNameLastName

        row.Cells("Customer").Value = customerName

    Next

我放了几个中断并检查了IntelliTrace,它正在提取正确的值和所有值,但它实际上并没有覆盖row.Cells(“Customer”)中的值。它只保留原始的id号。

为了让事情变得更加混乱,我之前使用完全相同的方法在相同的位置使用MEID / ESN Hex到Dec转换器完成了这个,并且它工作得很好。

有人可以看到我的代码有什么问题吗?我尝试使用各种组合来查看它是否由于数据库中的错误值而失败,但它适用于NULL / 0 / -1 / 1 /“”......所以我有点迷失。

1 个答案:

答案 0 :(得分:0)

好的,这就是我最终做的事情。

由于DataGridView只引入了CustomerID,因此我创建了一个名为CustomerName的新列,并隐藏了CustomerID。

然后,我完全按照上面的说法运行我的代码,但是将其从CustomerID中提取出来并写入CustomerName。

我猜CustomerID只能作为一个整数...非常奇怪,我找不到专栏的一个属性,说它只能接受整数,但它现在正在工作。< / p>