我在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 /“”......所以我有点迷失。
答案 0 :(得分:0)
好的,这就是我最终做的事情。
由于DataGridView只引入了CustomerID,因此我创建了一个名为CustomerName的新列,并隐藏了CustomerID。
然后,我完全按照上面的说法运行我的代码,但是将其从CustomerID中提取出来并写入CustomerName。
我猜CustomerID只能作为一个整数...非常奇怪,我找不到专栏的一个属性,说它只能接受整数,但它现在正在工作。< / p>