如果窗体未绑定,如何在MS Access组合框中选择第一项

时间:2018-11-15 04:29:52

标签: forms ms-access combobox

我尝试通过以下方式预先选择组合框项目中的第一项:

Private Sub Form_Load()
    Me.ProjectBox = Me.ProjectBox.ItemData(0)
End Sub

但它表示ItemData(0)为空。我认为这是因为它正在查询(行源属性)填充组合框之前运行。填充组合框后,有没有办法运行它

2 个答案:

答案 0 :(得分:1)

原始代码应该可以正常工作...

Private Sub Form_Load()
    Me.ProjectBox = Me.ProjectBox.ItemData(0)
End Sub

如果在设计器的“属性表”中正确设置了ComboBox属性,例如:

RowSource = {query}
ColumnCount = 2     
BoundColumn = 1   
ColumnWidths = 0";1"

特别注意 BoundColumn = 1

请参见online docs for BoundColumnBoundColumn = 0具有特殊含义,即ComboBox的值成为列表索引值(0、1、2 ...),而不是RowSource列的值。请注意,ComboBox.Column(index, row)等其他属性的索引值基于0,而第一行行列的ComboBox.BoundColumn从1开始……令人沮丧的不一致之处。

答案 1 :(得分:0)

您可以重新查询组合框。这将暂停代码直到完成:

Private Sub Form_Load()
    Me.ProjectBox.Requery
    Me.ProjectBox = Me.ProjectBox.ItemData(0)
End Sub