0

嗨,我坚持将列表框中的所有项目传递给水晶报告参数。

    For i = 0 To ListBoxBillAccount.Items.Count - 1
        If ListBoxBillAccount.Items(i).selected Then
            crParameterDiscreteValue = New ParameterDiscreteValue()
            crParameterDiscreteValue.Value = ListBoxBillAccount.SelectedItems()
            crParameterValues.Add(crParameterDiscreteValue)
        End If
    Next

我收到一个错误:“未找到类型‘DataRowView’上的公共成员‘选择’。”

编辑:这是我的完整代码:

   Dim crParameterFieldDefinitions As ParameterFieldDefinitions
    Dim crParameterFieldDefinition As ParameterFieldDefinition
    Dim crParameterValues As New ParameterValues
    Dim crParameterDiscreteValue As New ParameterDiscreteValue
    crParameterFieldDefinitions = crReportDoc.DataDefinition.ParameterFields
    crParameterFieldDefinition = crParameterFieldDefinitions("UserAcct")
    crParameterValues = crParameterFieldDefinition.CurrentValues

    For i = 0 To ListBoxBillAccount.Items.Count - 1
        If ListBoxBillAccount.Items(i).selected Then
            crParameterDiscreteValue = New ParameterDiscreteValue()
            crParameterDiscreteValue.Value = ListBoxBillAccount.SelectedItems()
            crParameterValues.Add(crParameterDiscreteValue)
        End If
    Next

    crParameterFieldDefinition.ApplyCurrentValues(crParameterValues)
    frmGenerateConsolidatedBill.CrystalReportViewer1.ReportSource = crReportDoc
    frmGenerateConsolidatedBill.Refresh()
    frmGenerateConsolidatedBill.Show()
4

1 回答 1

0

也许:

For Each obj In ListBoxBillAccount.SelectedItems()
    Dim crParameterDiscreteValue = New ParameterDiscreteValue()
    crParameterDiscreteValue.Value = obj
    crParameterValues.Add(crParameterDiscreteValue)
Next
于 2013-09-29T12:00:06.433 回答