none
新丁请教:vb2008环境下,如何对控件绑定的数据内容(数据)进行动态(变量)筛选。。。。。 RRS feed

  • 问题

  • 例:listbox通过窗体控件绑定了一个数据源,正常情况下listbox会把数据全部显示出来

          现在是:本人想通过一个字符串(变量),把数据里包含该字符串的相关内容显示(其他无关的内容排除出去)。

         问题是:系统的dataset或dataadapter不允许含有变量的连接字符串连接数据源;

                     本人试过用代码达到上述筛选的目的,但系统有不允许我进行控件的绑定!!!!(苦恼中。。。。。)

           那位高手知道处理方法的希望提点一下。。。。谢谢!

    2008年9月21日 6:23

答案

  • 办法1:绑定完了再进行删除

    办法2:RowFilter 进行筛选

    DataView view = new DataView();

    view.Table = DataSet1.Tables["Suppliers"];

    view.RowFilter = "City = 'Berlin'";
    办法3:遍历DataTable 进行删除

    2008年9月21日 7:29
    版主
  • 经过多次尝试,终于发现比较简单的处理方法:

    就是控件进行绑定,绑定后修改BindingSource的Filter筛选字段,就可以实现Listbox、ListView、DataGridView等控件的数据筛选显示了。。。。。。。

     

    例:Me.DinrBindingSource.Filter =“字符串”

    Me.DinrBindingSource.Filter = "dinr_lbwid='" & Me.外语ComboBox.SelectedValue & "' and dinr_lbbid='" & Me.母语ComboBox.SelectedValue & "'"

    我在字符串中间插入了变量,实现了筛选的内容可根据变量而变化!

    2008年9月23日 13:51

全部回复

  • 办法1:绑定完了再进行删除

    办法2:RowFilter 进行筛选

    DataView view = new DataView();

    view.Table = DataSet1.Tables["Suppliers"];

    view.RowFilter = "City = 'Berlin'";
    办法3:遍历DataTable 进行删除

    2008年9月21日 7:29
    版主
  • 谢谢提示!我试试看,本人水平低,可能要慢慢试才能消化,,呵呵。谢谢!

     

    2008年9月22日 6:54
  • 经过多次尝试,终于发现比较简单的处理方法:

    就是控件进行绑定,绑定后修改BindingSource的Filter筛选字段,就可以实现Listbox、ListView、DataGridView等控件的数据筛选显示了。。。。。。。

     

    例:Me.DinrBindingSource.Filter =“字符串”

    Me.DinrBindingSource.Filter = "dinr_lbwid='" & Me.外语ComboBox.SelectedValue & "' and dinr_lbbid='" & Me.母语ComboBox.SelectedValue & "'"

    我在字符串中间插入了变量,实现了筛选的内容可根据变量而变化!

    2008年9月23日 13:51