vb.net - 无法将参数传递给 Telerik 报告
问题描述
我正在尝试将字符串值传递给 Winforms 项目中的 Telerik 报告。该值在报表查看器的 Load 事件中正确设置。但是我无法在报表的 NeedDataSource 事件中获取参数值。显示错误“System.Collections.Generic.KeyNotFoundException: 'The given key was not present in the dictionary.'”。
报告查看器加载事件。
Public Class WorkOrderWithPricesReportViewer
Public Property o As OrderInfo
Private Sub ReportViewer1_Load(sender As Object, e As EventArgs) Handles ReportViewer1.Load
Dim typeReportSource As New Telerik.Reporting.TypeReportSource
typeReportSource.TypeName = GetType(WorkOrderHeader).AssemblyQualifiedName
Dim pOrderID As New Telerik.Reporting.Parameter
pOrderID.Value = o.orderID
typeReportSource.Parameters.Add(pOrderID)
ReportViewer1.ReportSource = typeReportSource
ReportViewer1.RefreshReport()
End Sub
结束类
报告中的 NeedDataSource 事件。尝试将参数值放入 _wohOrderID 时发生错误
Partial Public Class WorkOrderHeader
Inherits Telerik.Reporting.Report
Private _wohOrderID As String
Public Sub New()
InitializeComponent()
End Sub
Private Sub WorkOrderHeader_NeedDataSource(sender As Object, e As EventArgs) Handles Me.NeedDataSource
Dim wohReport As Telerik.Reporting.Processing.Report = DirectCast(sender, Telerik.Reporting.Processing.Report)
_wohOrderID = wohReport.Parameters("pOrderID").Value.ToString
谢谢你的帮助。
解决方案
推荐阅读
- python - 如何匹配双闭花括号而不是花括号
- amazon-web-services - AWS Personalize:失败原因数据集的交互次数少于 1000
- docker - 在 Windows Server '19 上,docker 可以与 IIS 并行运行吗?
- r - 如何在 quanteda 中获得情感分数(并保留情感词)?
- c# - Parallel.Invoke 在 C# 中未按预期工作
- html - 自动填充清除背景技巧停止工作?
- javascript - javascript关闭音频流并从选项卡中删除麦克风图标
- google-api - Google OAuth:“无法让您登录。此浏览器或应用程序可能不安全。”
- python - Python:使用 y-shift 在彼此之上绘制多个分布
- excel - 使用函数或 vba 按钮将列表元素除以另一个列表元素