Vb.net 从datagridview获取ID,并在文本框中向另一个窗体显示数据
我是vb.net中的新手。我有一个datagridview,显示交货编号、日期和供应商。现在,我希望管理员查看每一次发送到另一个表单的详细信息。我只想知道如何获得所选行的id,然后才能显示所选id的等效数据。谢谢 这是我的送货单代码Vb.net 从datagridview获取ID,并在文本框中向另一个窗体显示数据,vb.net,datagridview,Vb.net,Datagridview,我是vb.net中的新手。我有一个datagridview,显示交货编号、日期和供应商。现在,我希望管理员查看每一次发送到另一个表单的详细信息。我只想知道如何获得所选行的id,然后才能显示所选id的等效数据。谢谢 这是我的送货单代码 Private Sub dgvDeliveryReport_CellContentDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvDeliveryReport.Cell
Private Sub dgvDeliveryReport_CellContentDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvDeliveryReport.CellContentDoubleClick
If e.RowIndex < 0 Then Exit Sub
Dim id As Int32 = dgvDeliveryReport.CurrentRow.Cells(0).Value
Dim viewDelivery As New frmDeliveryFormReport
frmDeliveryFormReport.Show()
End Sub
私有子dgvDeliveryReport_CellContentDoubleClick(发送方作为对象,e作为DataGridViewCellEventArgs)处理dgvDeliveryReport.CellContentDoubleClick
如果e.RowIndex<0,则退出Sub
Dim id为Int32=dgvDeliveryReport.CurrentRow.Cells(0).Value
Dim viewDelivery作为新的FRMDelivery提交给MRReport
frmdeliveryformrreport.Show()文件
端接头
试试看
Dim newFrmName作为新表单
对于SampleGrid中作为DataGridViewRow的每一行
如果row.selected=true,则
Dim whatValueYouWant as string=row.cells(“ID”).value.toString()
如果newFrmName.NameOfTextBoxInForm.Text vbEmpty,则
'NameOfTextBoxInForm是表单中存在的文本框
newFrmName.NameOfTextBoxInForm.text=“,”&需要什么值
其他的
newFrmName.NameOfTextBoxInForm.text=所需的值
如果结束
如果结束
下一个
newFrmName.Show()
- 在
类中,添加一个新字段以存储当前行:frmDeliveryFormReport
private\u currentDeliveryReportRow作为DataGridViewRow
- 查找构造函数:
Public Sub New frmDeliveryFormReport() ... End Sub
(如果找不到,请继续下一步)Private Sub dgvDeliveryReport_CellContentDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvDeliveryReport.CellContentDoubleClick If e.RowIndex < 0 Then Exit Sub Dim viewDelivery As New frmDeliveryFormReport(dgvDeliveryReport.CurrentRow) frmDeliveryFormReport.Show() End Sub
- 更改/添加构造函数,使其接受
参数并存储给定行:DataGridViewRow
Public Sub New frmDeliveryFormReport(deliveryReportRow as DataGridViewRow) _currentDeliveryReportRow = deliveryReportRow End Sub
- 调整现有的
调用新构造函数:dgvDeliveryReport_CellContentDoubleClick
Public Sub New frmDeliveryFormReport() ... End Sub
Private Sub dgvDeliveryReport_CellContentDoubleClick(sender As Object, e As DataGridViewCellEventArgs) Handles dgvDeliveryReport.CellContentDoubleClick If e.RowIndex < 0 Then Exit Sub Dim viewDelivery As New frmDeliveryFormReport(dgvDeliveryReport.CurrentRow) frmDeliveryFormReport.Show() End Sub
私有子dgvDeliveryReport_CellContentDoubleClick(发送方作为对象,e作为DataGridViewCellEventArgs)处理dgvDeliveryReport.CellContentDoubleClick 如果e.RowIndex<0,则退出Sub Dim viewDelivery作为新的frmDeliveryFormReport(dgvDeliveryReport.CurrentRow)交付 frmdeliveryformrreport.Show()文件 端接头
_currentDeliveryReportRow.Cells(<CellIndex>)
\u currentDeliveryReportRow.Cells()
有关此主题的其他信息:
不只是将id传递给另一个表单,您可以将整行传递给它。然后,您可以显示所有需要的数据。只需将类型为
DataGridViewRow
的参数添加到frmDeliveryFormReport
构造函数中,并将DGVDDeliveryReport.CurrentRow
传递给它。您有什么东西可以告诉我它是如何工作的吗?喜欢论坛、教程或代码吗?就像我说的,我是vb.net的新手。所以我无法想象我会怎么做。谢谢。我补充了一个答案。请看它是否对你有帮助。杰森先生,上面的样本网格是什么?