我已创建2个组合框启用用户选择出发地和目的地并搜索可用航班,但我在这里遇到问题。
在点击搜索按钮之前,我可以看到datagrid显示所有细节,但是一旦我点击搜索按钮,它会搜索到正确的数据,但是有些细节遗失了,有人可以告诉我吗?
Screenshot of Before and After
这是我的编码:
Private Sub btnSearch_Click(sender As System.Object, e As System.EventArgs) Handles btnSearch.Click
FlightDataGridView.DataSource = Me.FlightsDatabaseDataSet.Flight.Select("Departure= '" & ComboBox1.Text & "' AND Destination= '" & ComboBox2.Text & "'")
End Sub
请帮忙
答案 0 :(得分:0)
这是过滤数据的错误方法。您应该做的是将DataTable
绑定到BindingSource
,将其绑定到DataGridView
,然后设置Filter
的{{1}}。当您使用键入的BindingSource
时,我猜测您已经拥有DataSet
。如果将表从“数据源”窗口拖到表单上,则会生成一个。在这种情况下,您的代码应如下所示:
BindingSource
请注意使用FlightBindingSource.Filter = String.Format("Departure = '{0}' AND Destination = '{1}'",
ComboBox1.Text,
ComboBox2.Text)
来提高可读性。