轉帖|使用教程|編輯:鮑佳佳|2021-01-25 11:15:39.890|閱讀 257 次
概述:前面的數據處理博文解釋的,是“靜態”的,即通過屬性設置格式、輸入數學表達式、使用ActiveReports內置的函數。下面我通過后臺代碼、腳本來實現“動態”,即運行時來修改數據內容或者UI控件的文字、顏色等屬性內容。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
ActiveReports 是一款專注于 .NET 和 .NET Core 平臺的報表控件。通過拖拽式報表設計器,可以快速地設計 Excel表格、Word文檔、圖表、數據過濾、數據鉆取、精準套打等類型報表,全面滿足 WinForm、ASP.NET、ASP.NET MVC、WPF 平臺中各種報表的開發需要。同時,通過豐富的 API 可以靈活的實現報表創建、加載和運行時的個性化自定義需求。
前面的數據處理博文解釋的,是“靜態”的,即通過屬性設置格式、輸入數學表達式、使用ActiveReports內置的函數。下面我通過后臺代碼、腳本來實現“動態”,即運行時來修改數據內容或者UI控件的文字、顏色等屬性內容。
頁面報表:
我們通過腳本可實現在運行時修改數據。
添加頁面報表后,回出現下的模板,腳本選項卡將會出現在報表設計器中,然后您可以在腳本選項卡中寫入代碼(VB.net)。
腳本代碼:
Public Function GetDueDate() as Date Return DateTime.Now.AddDays(30) End Function
在 Textbox 控件的Value屬性來調用此函數:
=Code.GetDueDate()
腳本代碼:
Public Dim MyDoubleVersion As Double = 123.456
在 Textbox 控件的Value屬性中使用之前定義的常量:
=Code.MyDoubleVersion
腳本代碼:
Public Function ReturnParam() As String Return "param value = " + Report.Parameters!ReportParameter1.value.ToString() End Function
在 TextBox 控件的Value屬性中調用全局集合:
=Code.ReturnParam()
腳本代碼:
Public Function GetColorByValue(val As Integer) As System.ConsoleColor Select Case val Case 1 Return System.ConsoleColor.Blue Exit Select Case 2 Return System.ConsoleColor.Red Exit Select Case 3 Return System.ConsoleColor.Green Exit Select Case Else Return System.ConsoleColor.DarkYellow Exit Select End Select End Function
在Table的Detail中調用:
BackgroundColor=Code.GetColorByValue(Fields!產品ID.Value)
展示結果:
注意:
區域報表
腳本和后臺代碼,原理相同,用到了區域報表的事件,關于事件請閱讀這篇博文《》。
區域報表強大的腳本編程能力,幾乎無所不能,如可在腳本中控制報表的UI控件,非常方便。
不用UI調用,而是在腳本中控制UI控件,且非常好的兼容Visual Basic.NET 和 C# 語言。
此外,對習慣了使用Visual Studio的程序員而言,沒有什么比能提供智能感知更爽的東西了:
腳本代碼:
public void Detail_Format()
{
int id = Convert.ToInt32(this.TextBox3.Text);
switch(id)
{
case 1:
this.TextBox2.BackColor = Color.Red;
break;
case 2:
this.TextBox2.BackColor = Color.Green;
break;
case 3:
this.TextBox2.BackColor = Color.Blue;
break;
default:
this.TextBox2.BackColor = Color.White;
break;
}
}
結果展現:
注意:
源碼下載:
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: