轉(zhuǎn)帖|使用教程|編輯:鮑佳佳|2021-01-25 11:15:39.890|閱讀 257 次
概述:前面的數(shù)據(jù)處理博文解釋的,是“靜態(tài)”的,即通過(guò)屬性設(shè)置格式、輸入數(shù)學(xué)表達(dá)式、使用ActiveReports內(nèi)置的函數(shù)。下面我通過(guò)后臺(tái)代碼、腳本來(lái)實(shí)現(xiàn)“動(dòng)態(tài)”,即運(yùn)行時(shí)來(lái)修改數(shù)據(jù)內(nèi)容或者UI控件的文字、顏色等屬性?xún)?nèi)容。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
ActiveReports 是一款專(zhuān)注于 .NET 和 .NET Core 平臺(tái)的報(bào)表控件。通過(guò)拖拽式報(bào)表設(shè)計(jì)器,可以快速地設(shè)計(jì) Excel表格、Word文檔、圖表、數(shù)據(jù)過(guò)濾、數(shù)據(jù)鉆取、精準(zhǔn)套打等類(lèi)型報(bào)表,全面滿(mǎn)足 WinForm、ASP.NET、ASP.NET MVC、WPF 平臺(tái)中各種報(bào)表的開(kāi)發(fā)需要。同時(shí),通過(guò)豐富的 API 可以靈活的實(shí)現(xiàn)報(bào)表創(chuàng)建、加載和運(yùn)行時(shí)的個(gè)性化自定義需求。
前面的數(shù)據(jù)處理博文解釋的,是“靜態(tài)”的,即通過(guò)屬性設(shè)置格式、輸入數(shù)學(xué)表達(dá)式、使用ActiveReports內(nèi)置的函數(shù)。下面我通過(guò)后臺(tái)代碼、腳本來(lái)實(shí)現(xiàn)“動(dòng)態(tài)”,即運(yùn)行時(shí)來(lái)修改數(shù)據(jù)內(nèi)容或者UI控件的文字、顏色等屬性?xún)?nèi)容。
頁(yè)面報(bào)表:
我們通過(guò)腳本可實(shí)現(xiàn)在運(yùn)行時(shí)修改數(shù)據(jù)。
添加頁(yè)面報(bào)表后,回出現(xiàn)下的模板,腳本選項(xiàng)卡將會(huì)出現(xiàn)在報(bào)表設(shè)計(jì)器中,然后您可以在腳本選項(xiàng)卡中寫(xiě)入代碼(VB.net)。
腳本代碼:
Public Function GetDueDate() as Date Return DateTime.Now.AddDays(30) End Function
在 Textbox 控件的Value屬性來(lái)調(diào)用此函數(shù):
=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屬性中調(diào)用全局集合:
=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中調(diào)用:
BackgroundColor=Code.GetColorByValue(Fields!產(chǎn)品ID.Value)
展示結(jié)果:
注意:
區(qū)域報(bào)表
腳本和后臺(tái)代碼,原理相同,用到了區(qū)域報(bào)表的事件,關(guān)于事件請(qǐng)閱讀這篇博文《》。
區(qū)域報(bào)表強(qiáng)大的腳本編程能力,幾乎無(wú)所不能,如可在腳本中控制報(bào)表的UI控件,非常方便。
不用UI調(diào)用,而是在腳本中控制UI控件,且非常好的兼容Visual Basic.NET 和 C# 語(yǔ)言。
此外,對(duì)習(xí)慣了使用Visual Studio的程序員而言,沒(méi)有什么比能提供智能感知更爽的東西了:
腳本代碼:
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;
}
}
結(jié)果展現(xiàn):
注意:
源碼下載:
人民幣金額小寫(xiě)轉(zhuǎn)換為大寫(xiě).zip (50.83 kb)
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: