对象变量或块变量未设置错误vb.net

时间:2010-08-21 19:45:00

标签: vb.net error-handling

我正在从数据库中填充组合框。在调试中,我可以看到已经填充了组合框。

这是代码

Private Sub ComboID_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboID.SelectedIndexChanged

        Dim data(21) As String
        Try
            t_code.Text = ComboID.SelectedItem(0)
            ComboID.Visible = False
            data = getData(t_code.Text)

            populateFields(data)


        Catch ex As Exception
            MsgBox(ex.Message)
        End Try

    End Sub

但是当我运行这个程序时,我得到错误:对象变量或块变量没有设置错误

我真的很感谢你的帮助。 感谢

1 个答案:

答案 0 :(得分:0)

只知道组合框填充是不够的。你还应该测试

SelectedIndex >= 0

如果用户清除选择,则SelectedIndex可能会更改为-1。

当然,getData很可能返回Nothing,而populateFields也无法处理。它可能会抛出一个

If data isNot Nothing
end if

测试populateFields调用。测试边缘情况永远不会伤害。