Me imagino que lo creas algo asi:
Código vb:
Ver originalDim Parametros As ParameterFields = New ParameterFields()
Despues creas los parametros que mandarás
Código vb:
Ver originalDim PrimerParametro As ParameterField = New ParameterField()
Dim SegundoParametro As ParameterField = New ParameterField()
Ahora los parámetros discretos
Código vb:
Ver originalDim MiValorDiscretoPrimerParametro As ParameterDiscreteValue = New ParameterDiscreteValue()
Dim MiValorDiscretoSegundoParametro As ParameterDiscreteValue = New ParameterDiscreteValue()
'Les pones nombre
PrimerParametro.ParameterFieldName = "PrimerParametro"
SegundoParametro.ParameterFieldName = "SegundoParametro"
Les asignas un valor
Código vb:
Ver originalMiValorDiscretoSegundoParametro.Value = "valor1"
MiValorDiscretoTercerParametro.Value = "valor2"
Y por último
Código vb:
Ver originalPrimerParametro.CurrentValues.Add(MiValorDiscretoPrimerParametro)
SegundoParametro.CurrentValues.Add(MiValorDiscretoSegundoParametro)
Parametros.Add(PrimerParametro)
Parametros.Add(SegundoParametro)
TuFormaDelReporte.CrystalReportViewer1.ParameterFieldInfo = Parametros
Ovbiamente que los nombres de los parámetros discretos que declares aqui deberán tener el mismo nombre de los creados en el reporte o viceversa.
Saludos!