Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        strcmd = "select * from Person.vsPersonalInfo " & _
       "where 借阅证号=" & UsName1
        Connection1.Open()
        AdapvwRegister.SelectCommand = New SqlCommand(strcmd, Connection1)
        Connection1.Close()
        AdapvwRegister.Fill(dsvwRegister)
        MsgBox(UsName1)
        TextBox4.Text = Str(GetUsName1())
        TextBox1.DataBindings.Add(New Binding("Text", dsvwRegister, "Person.vsPersonalInfo.姓名"))   ***到这里之后显示错误说无法显示字段Person的子列表
        TextBox2.DataBindings.Add(New Binding("Text", dsvwRegister, " Person.vsPersonalInfo.性别"))
        TextBox3.DataBindings.Add(New Binding("Text", dsvwRegister, "Person.vsPersonalInfo.年龄"))
        TextBox6.DataBindings.Add(New Binding("Text", dsvwRegister, "Person.vsPersonalInfo.读者职务"))    End Sub

解决方案 »

  1.   

    嘿嘿 查出来了 
    Person.vsPersonalInfo是我在sql server 中定义的表,在vb中建立的数据集dsvwRegister中并不存在这样的表,因此在binding的时候无法访问不存在的字段,因此要先在dataset dsvwRegister中先建立一个表,然后在调用这个表即可。
    改后的代码:
      Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            
            Dim AdapvwRegister As New SqlDataAdapter()
            Dim dsvwRegister As New DataSet()
            strcmd = "select * from Person.vsPersonalInfo " & _
           "where 借阅证号=" & UsName1
            Connection1.Open()
            AdapvwRegister.SelectCommand = New SqlCommand(strcmd, Connection1)
            Connection1.Close()
            dsvwRegister.Tables.Add("PersonalInfo")
            AdapvwRegister.Fill(dsvwRegister, "PersonalInfo")   ’这两句为更改的
            TextBox7.Text = Str(GetUsName1())
            TextBox1.DataBindings.Add(New Binding("Text", dsvwRegister, "PersonalInfo.姓名"))
            TextBox2.DataBindings.Add(New Binding("Text", dsvwRegister, "PersonalInfo.性别"))
            TextBox3.DataBindings.Add(New Binding("Text", dsvwRegister, "PersonalInfo.年龄"))
            TextBox6.DataBindings.Add(New Binding("Text", dsvwRegister, "PersonalInfo.读者职务"))
            TextBox4.DataBindings.Add(New Binding("Text", dsvwRegister, "PersonalInfo.身份证号"))
        End Sub