Hi!!!
You are right that the Dataset resides in the memory. Your idea to fill it by a conditional query is good.
What I have understood from ur problem is it that you have a datagridview binded with a datatable. You want to fill it with a conditional query based on the values from the 4 comboboxes which are on a dialog box.
Now ....
1) Load the dialog box.
2) Fill your comboboxes.
3) Select return values from the Comboboxes to variables.
4) Create a SelectCommand with the returned values.
5) Execute the command and fill your datatable.
6) Bind your DataGridView with the returned Values.....
That's it..
Further if any query submit it please.
Keep Coding..............
Nothing is Impossible.....