I'm not 100% on what you're trying to do but here goes nothing just in case I've understood you correctly. I don't think you should be using a QueryStringParameter since your parameter values are not in the QueryString. I'm not sure of how this situation is best dealt with, i.e. selecting records based on one or more values you have selected. I've seen examples of passing a comma-delimited list into a stored procedure, splitting this using a custom function and then doing a SELECT using IN, e.g.
-- For example @queryParameter = '123,124,176,199'
SELECT * FROM MyTable WHERE ID IN ( fnSplit(@queryParameter) ) -- fnSplit in this line would be a custom function which splits a parameter (lots of examples of this if you do a search for "custom sql split function"
I also found this example, which makes use of the FilterExpression property of the SqlDataSource. So in your case you'd declare your SqlDataSource (note I haven't included your whole query, but if you try this leave out the AND fldArray=@fldArray from the WHERE clause):
<asp:SqlDataSource ID="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:MyConnectionString %>"
SelectCommand="SELECT * FROM tbl_subProduct ..."
FilterExpression="tbl_subProduct.numSubProductID = {0}"
OnFiltering="SqlDataSource1_Filtering">
</asp:SqlDataSource>
In code-behind, handle the OnFiltering event: Public Sub SqlDataSource1_Filtering(ByVal Sender As Object, ByVal E As SqlDataSourceFilteringEventArgs) Handles SqlDataSource1.Filtering
Dim delim() As String = {","}
Dim str As String = "214,215,216,"
Dim arr As Array = str.Split(delim, StringSplitOptions.RemoveEmptyEntries)
Dim exp As String = ""
For Each s As String In arr
If exp <> "" Then
exp = exp & " OR "
End If
exp = exp & "tbl_subProduct.numSubProductID=" & s
Next
If exp <> "" Then
SqlDataSource1.FilterExpression = exp
End If
End Sub
I'm not a VB programmer so apologies if there are syntax errors if you do try this - I had to make it up in my head from a c# version I got working.
"Sometimes I think the surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us."