狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

Repeater控件動(dòng)態(tài)變更列(Header,Item和Foot)信息

admin
2017年11月16日 23:39 本文熱度 6705

需求開(kāi)發(fā)一個(gè)小報(bào)表,顯示最近五個(gè)月的summary的數(shù)量統(tǒng)計(jì),報(bào)表會(huì)隨月份的變化而變化,如下圖。第一列[Department]固定,第二至第六列,也就是說(shuō)Nov 2012 這列會(huì)在下月的時(shí)候消失,其后的列會(huì)向前移,最后一列Mar 2013 會(huì)變?yōu)锳pr 2013。

下圖中,最底一行是顯示每一列的總數(shù)(除第一列外)。


為了這個(gè)報(bào)表,Insus.NET決定使用Repeater控件來(lái)實(shí)現(xiàn)。難度在于動(dòng)態(tài)顯法第二列至第六列的列名,以及綁定數(shù)據(jù)。最后一行計(jì)算總計(jì)的,只要完成上面的動(dòng)態(tài)綁定之后,也算不上問(wèn)題,Repeater的FooterTemplate顯示某列總計(jì)方法,可以參考這篇:http://www.cnblogs.com/insus/archive/2013/03/21/2973326.html
由于整個(gè)報(bào)表,列數(shù)一定,共六列,因此我們可以把這個(gè)寫(xiě)死。

首先是HeaderTemplate,內(nèi)嵌一個(gè)table,設(shè)計(jì)好六列,每列拉一個(gè)Label,并分別設(shè)置好Label的ID,最好讓它們似帶有索引的序數(shù):


接下來(lái)是ItemTemplate設(shè)計(jì),可以參考HeaderTemplate的設(shè)計(jì)方式:


最后是FooterTemplate的設(shè)計(jì),設(shè)計(jì)好Label的ID,td文本對(duì)齊以及背景顏色:


三個(gè)Template的Label的ID都不一樣,但有一些規(guī)律,這樣方便在后臺(tái)好 FindControl以及將來(lái)重構(gòu)好控制。

上面全是html的設(shè)計(jì),下面將是程序開(kāi)發(fā)。

 //實(shí)例化對(duì)象,以及宣告一個(gè)DataTable對(duì)象objDt。
PrintLog objPrintLog = new PrintLog();
DataTable objDt;

//宣告5個(gè)變量,將用來(lái)存儲(chǔ)那5個(gè)月份每個(gè)部分的數(shù)量
decimal c1, c2, c3, c4, c5;


把從數(shù)據(jù)庫(kù)獲取的數(shù)據(jù)綁定至Repeater控件:

復(fù)制代碼
 protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Data_Binding();
}
}

private void Data_Binding()
{
((IUserControlContainer)this.Master).ShowControl = true;

CultureInfo oCultureInfo = new CultureInfo("en"); //設(shè)置好區(qū)域文化
DateTime currentDateTime = DateTime.Now; //獲取當(dāng)前日期時(shí)間
objPrintLog.Year = currentDateTime.Year; //獲取年份賦值
objPrintLog.Month = currentDateTime.Month;//獲取月份賦值
objPrintLog.Months = 5; //最近連續(xù)5個(gè)月份

objDt = objPrintLog.GetSummaryReportByYearMonth();
this.RepeaterLFMS.DataSource = objDt;
this.RepeaterLFMS.DataBind();
}
復(fù)制代碼


電話響了,需要先接電話...  大約一分三十六秒完畢,順便去沖杯Coffee.

下面將是Repeater控件的OnItemDataBound事件,Insus.NET也分別對(duì)header,Item以及Foot進(jìn)行圖列說(shuō)明代碼:



Item 綁定:

 

 最后是Foot的代碼:


呵呵,完成了。相信它在運(yùn)行時(shí),會(huì)隨著時(shí)間的前進(jìn)(月份的變化),它對(duì)應(yīng)的列名,數(shù)據(jù)也會(huì)隨之變化。


該文章在 2017/11/16 23:39:29 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved