2012-10-03 24 views
4

我在Windows應用程序中使用Devexpress XtraReport進行報告。我在XtraReport1中設置了一個參數param1,其中包含字符串類型,並使用以下代碼傳遞參數。如何在devexpress報告中傳遞參數

private void button1_Click(object sender, EventArgs e)   
{ 
    XtraReport1 report = new XtraReport1();    
    report.Parameters["param1"].Value = "kashif"; 
    report.Print(); 
} 
當我按下按鈕1以下窗口apperas詢問我是否需要參數1值

在已經顯示「卡希夫」,在它與按鈕「提交」和「復位」 我的問題是:我不希望這個窗口打開時,我按下button1,而是我想直接傳遞「kashif」在它沒有提示我爲param1值。 testimage

回答

11

從他們的文檔這裏如何:Silently Pass a Parameter Value

Add a parameter to a report, set the parameter's Modifiers property to Public, and disable the parameter's Parameter.Visible property. When there are no visible parameters in a report, their values are passed "silently" (without exposing the Parameters UI to end-users).

private void button1_Click(object sender, EventArgs e) 
{ 
    // Create a report instance. 
    XtraReport1 report = new XtraReport1(); 

    // Obtain a parameter, and set its value. 
    report.parameter1.Value = 30; 

    // Hide the Parameters UI from end-users. 
    report.parameter1.Visible = false; 

    // Show the report's print preview. 
    report.ShowPreview(); 
} 
+0

這正是我正在尋找..非常感謝史蒂夫 – kashif

+0

這個問題已經解決,但我是發在gridControl1.Print();生成的gridcontrol報告中傳遞參數的另一個問題; – kashif

0

您可以喜歡這個 **(Asp.net的mvc剃刀)

Invoice report = new Invoice(); 

public ActionResult InvoiceViewerPartial() { 
using (CrmDbContext db = new CrmDbContext()) { 
    report.DataSource = db.InvoiceItem.ToList(); 
} 
    report.Parameters["InvoiceId"].Value = "Inv0003";     
    return PartialView("_InvoiceViewerPartial", report); 
}