Datagridview筛选错误/ Vb.net的SQL

问题描述:

我的问题是,我不能筛选列表框中的多选项目datagridview。Datagridview筛选错误/ Vb.net的SQL

我可以通过多个文本框,组合框和一个选定的列表框来过滤datagridview。但是,我不能用listbox筛选多个选择。任何想法如何解决这个问题?

任何帮助将不胜感激。

+0

sql标记?解释如何? –

+0

@Raging公牛 MYBindingSource.Filter = _ 的String.Format( “mycolumn LIKE '%” &ListBox1.Text& “% 'AND mycolumn2 LIKE' %” &ComboBox1.Text& “%'”) 我的代码等这个。我使用sql服务器-mdf。 – burak

+0

将代码放在问题中,而不是在评论中。我对什么是错误有预感,但我无法确定没有代码。还要添加一些周围的代码,而不仅仅是那一行。 – WozzeC

我就继续和张贴我的预感根据您的评论:

ListBox.Text将提供给您的第一选择item.ToString()。这意味着当您选择两个对象时,它仍然只会显示第一个对象。你必须做的是循环不同的ListBoxItems并逐个添加它们。所以你要找的东西是这样的:

Dim Result As String = String.Format("mycolumn2 Like '%{0}%' AND (", ComboBox1.Text) 
For i As Integer = 0 To ListBox1.SelectedItems.Count - 1 
    Result &= String.Format(" mycolumn Like '%{0}%'", ListBox1.SelectedItems(i).ToString) 
    If i <> ListBox1.SelectedItems.Count - 1 Then 
     Result &= " OR " 
    Else 
     Result &= ")" 
    End If 
Next 

我不确定该paranthesis将工作,但我希望它的一半。这将创建一个过滤器,要求mycolumn2与之前的文本框匹配,然后要求mycolumn与任何选定的ListBox1.Items匹配。