1

私はSqlliteデータベースを使用しており、5つのコンボボックスを使用してデータグリッドビューをフィルタリングしていますが、正常に機能していますが、私の問題は、コンボボックスのいずれかで値を選択しないと機能しないということです.ANDを使用していて、ORを使用するとコンボボックスで選択したすべての値を使用してフィルタリングしたいので、望ましい結果が得られません。私のコードは次のとおりです。

DataView dv = new DataView();
        string voterlist = "select * from voters";
        DataTable dt = Database.myAdapter(voterlist);
        dv = dt.DefaultView;
        dataGridView1.DataSource = dv;
        dv.RowFilter = string.Format("consname= '{0}' AND area = '{1}' AND pollingstn = '{2}' AND wardno = '{3}' AND policestn = '{4}'", combo_consname.SelectedItem, combo_Area.SelectedItem, combo_Polling.SelectedItem, combo_Ward.SelectedItem, combo_Police.SelectedItem);
4

1 に答える 1

0

ユーザーがフィルタリングを適用できないようにする場合は、RowFilterプロパティを設定しないComboBoxでくださいRowFilter.

" AND columnX = '" + yourValue + "'"

yourValue が null ではなく、空の文字列でもない場合にのみ、1 つずつ。

RowFilterもちろん、文字列を で始める必要はありません。AND

于 2013-04-20T14:21:51.930 に答える