【问题标题】:how do you pass the value/string of textbox to a XtraLabel in XtraReport in vb.net?如何将文本框的值/字符串传递给 vb.net 中 XtraReport 中的 XtraLabel?
【发布时间】:2020-09-30 09:06:55
【问题描述】:

我想将一个值或字符串从文本框传递到 XtraLabel,到目前为止我所做的是创建一个参数,然后将值直接发送到参数中,然后 Data Bind 带有我创建的参数的标签。

我的代码是这样的:

Imports DevExpress.XtraPrinting
Imports DevExpress.XtraReports.UI

Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        Dim reports As New XtraReport1()
        Dim pt As New ReportPrintTool(reports)

        reports.GetValue.Value = Integer.Parse(TextBox1.Text)
        pt.AutoShowParametersPanel = True
        pt.ShowPreviewDialog()

    End Sub
End Class

它确实传递了值但是我必须从参数面板单击提交以将值或字符串传递给我的 GetValue 参数,这不是我想要的,当我设置 pt.AutoShowParametersPanel = False 时它不会创建任何文件。我想从文本框中输入一个值,当我单击按钮时,它会自动将文本框中的值加载到 XtraReport1 中的 xtralabel 中。请帮忙,还有另一种方法可以正确地做到这一点吗?我想尽可能多地使用参数,但任何一种方法都可以。谢谢。

Form1 图片:

XtraReport1 图片:

编辑:我忘了说这是一个测试程序

【问题讨论】:

  • 我认为您想要在参数面板中不可见的参数,因此在属性网格中设置 parameter.Visible=false。如果您根本不想等待参数提交,请执行代码“reports.RequestParameters = False”。使用您的代码传递参数值应该可以正常工作。你可以在这里分享你的项目。使用 onedrive/dropbox/googledrive/etc 压缩并共享

标签: vb.net devexpress xtrareport


【解决方案1】:
Dim parameter As New Parameter() With {.Name = "GetValue", .Type = GetType(String), .Value = TextBox1.Text}
reports.Parameters.Add(parameter)

Create a Report Parameter

【讨论】:

    【解决方案2】:

    我再次阅读 devexpress 网站以了解如何使用参数,我几乎没有注意到来自网络的“提示”。你需要做的是:

    reports.Parameters("GetValue").Value = TextBox1.Text
    reports.RequestParameters = False
    

    这样报告就不会要求输入,它会自动发送输入并提交给参数/s

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-13
      相关资源
      最近更新 更多