先说明datagrid的一些属性,说清楚了,自然解决方法就明了了。说明:Bookmark:设置或返回当前的行标签号DataGrid1.Columns("ProductID").CellText(DataGrid1.Bookmark)返回当前行中字段为‘ProductID’的值。
在 DataGrid 被连接到一个数据库后,可能想要监视用户单击了哪一个单元。可以使用RowColChange 事件——而不是 Click 事件。
如;
Private Sub DataGrid1_RowColChange(LastRowAs Variant, ByVal LastCol As Integer)
Debug.Print DataGrid1.Columns("ProductID").CellValue(DataGrid1.Bookmark)
End Sub
可通过RowColChange事件,把从DataGrid控件中选择某行记录中的某个值显示在其他控件上,比如Text控件txtProductID,txtProductID=DataGrid1.Columns("ProductID").CellValue(DataGrid1.Bookmark)
如果要看你代码的运行的效果可以直接Debug.Print方法在“立即窗口”中看到你代码的运行结果,对调试程序作用很明显。
*********************************************************************************
在DataGrid增加一个行:
利用一下方法可以控制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
*********************************************************************************
在DataGrid中删除一个行:
下面的代码将删除被单击的列。
Private Sub DataGrid1_HeadClick(ByVal ColIndex AsInteger)
DataGrid1.Columns.Remove ColIndex
End Sub
参考文献:https://zhidao.baidu.com/question/85244508.html?qbl=relate_question_0&word=VBDataGrid
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。