vb中如何获取datagrid选中行的值?

来源:百度知道 编辑:UC知道 时间:2024/09/23 15:19:44
我要的效果是我选中某行,然后双击,获得这行其中一个单元格的值

先说明datagrid的一些属性,说清楚了,自然解决方法就明了了。

说明:
Bookmark:设置或返回当前的行标签号
DataGrid1.Columns("ProductID").CellText(DataGrid1.Bookmark)

返回当前行中字段为‘ProductID’的值。

在 DataGrid 被连接到一个数据库后,可能想要监视用户单击了哪一个单元。可以使用 RowColChange 事件——而不是 Click 事件。

如;
Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)

Debug.Print _DataGrid1.Columns("ProductID").CellValue(DataGrid1.Bookmark)
End Sub

通过这个方法就能获得用户点击的行的某个值。

利用一下方法可以控制datagrid每列的宽度;

Dim c As Column
Set c = DataGrid1.Columns.Add(DataGrid1.Columns.Count)
With c
.Visible = True
.Width = 1000
.Caption = "我的新列"
.DataField = Adodc1.Recordset.Fields("ProductName").Name
.Alignment = dbgRight
End With

下面的代码将删除被单击的列。
Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)

DataGrid1.Columns.Remove ColIndex