Vb.net 将参数传递给Crystal Reports时出现延迟绑定错误时的选项Strict

Vb.net 将参数传递给Crystal Reports时出现延迟绑定错误时的选项Strict,vb.net,crystal-reports,Vb.net,Crystal Reports,我有一个表单,它显示SQL表中的一些基本信息。我想将此信息打印到Crystal报表中。该功能在选项严格关闭时工作良好。但是,当我打开option strict时,会出现“option strict on disallows late binding”错误 下面是有问题的代码块 Private Sub btnPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrint.Cli

我有一个表单,它显示SQL表中的一些基本信息。我想将此信息打印到Crystal报表中。该功能在选项严格关闭时工作良好。但是,当我打开option strict时,会出现“option strict on disallows late binding”错误

下面是有问题的代码块

    Private Sub btnPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrint.Click
    Cursor = Cursors.WaitCursor
    Try
        Dim frm As New frmReportView
        frm.subject = "CPE Number - " & Me.tbCPE.Text
        frm.MdiParent = Me.MdiParent
        Dim rpt As Object = New CustPropertyEval
        rpt.SetParameterValue("cpe_no", Me.tbCPE.Text)
        SetDataSourceShowReport(frm, rpt)
    Catch ex As Exception
        Cursor = Cursors.Arrow
        MsgBox(ex.Message)
    End Try
    Cursor = Cursors.Arrow
End Sub
延迟绑定错误位于rpt.SetParameterValue(“cpe_no”,Me.tbCPE.Text)行。 如果我将其注释掉并执行应用程序,代码工作正常,但它会强制用户输入cpe_no参数。我不想被这件事缠住。有人知道为什么我不能在option strict打开时传递该参数吗?此外,frm是一个Windows窗体,显示crystal report,CustPropertyVal是一个名为crystal report的窗体,它接受一个参数—cpe_no.TIA

不要执行“Dim rpt As Object”—这会导致您的问题。执行“Dim rpt As CustPropertyEval”和Option Strict应该停止抱怨(假设SetParameterValue是CustPropertyEval的一种方法)