我在数据表中有2列,两者都显示在组合框的下拉列表中(多列下拉列表)。现在我想在组合框中显示一列,在texbox中显示另一列(使用数据绑定)。代码有效,但有一个问题 - 我想在表单打开时使用我的combobox.selectedIndex -1,并且文本框为空。 Combobox不是问题,但Texbox无法清除文本。这是我的代码:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim SQL As String = "SELECT Name,Surname from MyTable"
Dim dtb As New DataTable()
dtb.Columns.Add("Name", System.Type.GetType("System.String"))
dtb.Columns.Add("Surname", System.Type.GetType("System.String"))
Using con As OracleConnection = New OracleConnection("Data Source=MyDB;User Id=Lucky;Password=MyPassword;")
Try
OraclePovezava.Open()
Using dad As New OracleDataAdapter(SQL, con)
dad.Fill(dtb)
End Using
Combobox1.DataSource = dtb
Combobox1.DisplayMember = "Surname"
Combobox1.AutoCompleteMode = AutoCompleteMode.Suggest
Combobox1.AutoCompleteSource = AutoCompleteSource.ListItems
con.Close()
Catch ex As Exception
'MessageBox.Show(ex.Message)
Finally
con.Dispose()
End Try
TextBox1.DataBindings.Add("Text", dtb, "Name")
Combobox1.SelectedIndex = -1
End Using
End Sub
正如您所见,此代码是在表单的加载事件中。我在使用If语句的Combobox.SelectedIndexChanged事件中尝试使用Textbox数据绑定,但它没有工作。
P.S。:我想要的输出是当用户从组合框中选择一些项目时,两个列值都显示在texbox&组合框。您看到的代码可以正常工作,但Textbox在表单加载时无法像组合框那样为空。
有什么建议吗?