使用组合框将datagridview绑定到数据源
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用组合框将datagridview绑定到数据源相关的知识,希望对你有一定的参考价值。
我在询问之前阅读了这些内容:
VB: How to bind a DataTable to a DataGridView?
http://msdn.microsoft.com/en-us/library/fbk67b6z(v=vs.100).aspx
我有一个非常简单的问题。 vb.net winforms项目包含几个数据表,一个组合框和一个datagridview。
我可以选择要显示的数据表:
datagridview1.datasource = dt1 'or dt2 or dt3
并且可以正常工作。
我想做的是从组合框选择中选择要显示的数据表,在此之前我已经定义了一个组合框项目集合:
combobox1.item.add("dt1")
combobox1.item.add("dt2")
combobox1.item.add("dt3")
我放置了此行
datagridview.datasource = combobox1.SelectedItem
在ComboBox1_SelectedIndexChanged
事件中。
这只是使我的datagridview空白。我最初的想法是失败了,因为我将字符串传递给需要对象的对象,因此我尝试了datagridview.datasource = CObj(combobox1.SelectedItem)
,但没有更好的结果。
我做错了什么简单的事情?
您的ComboBox
只是一个字符串列表,因此当您执行datagridview.datasource = combobox1.SelectedItem
时,实际上并没有将数据源设置为数据表。
我在您的ComboBox1_SelectedIndexChanged
事件中将如何执行此操作:
Select Case combobox1.SelectedItem
Case "dt1"
datagridview1.datasource = dt1
Case "dt2"
datagridview1.datasource = dt2
Case "dt3"
datagridview1.datasource = dt3
End Select
我通常使用C#编写代码,但是这种回旋方法可以工作:
If combobox1.SelectedItem = "dt1" Then
datagridview1.DataSource = dt1
ElseIf combobox1.SelectedItem = "dt2" Then
datagridview1.DataSource = dt2
ElseIf combobox1.SelectedItem = "dt3" Then
datagridview1.DataSource = dt3
End If
以上是关于使用组合框将datagridview绑定到数据源的主要内容,如果未能解决你的问题,请参考以下文章
如何在不使用 datagridview 的情况下编辑绑定到组合框的数据表中的数据?
如何将数据源绑定到 datagridview 组合框和复选框
使用查找组合框 c# 绑定 Datagridview 多列排序