原創|使用教程|編輯:我只采一朵|2018-01-17 11:15:51.000|閱讀 274 次
概述:假設你決定在辦公室舉行彩票形式的抽獎活動,而你手邊只有FastReport.Net,應該如何實現呢?
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
假設你決定在辦公室舉行彩票形式的抽獎活動,而你手邊只有FastReport.Net。那么你需要創建兩組具有唯一編號的獎券。第一組為用戶,第二組為彩票。
我們將在報表腳本中為彩票生成唯一的號碼,并使用這些號碼的列表作為數據源。我們開始吧。
首先,運行報表設計器。現在我們還沒有該報表的數據。轉到代碼選項卡。
我做了一張號碼的列表:
private List<int> num = new List<int>();
我們創建一個方法來生成唯一號碼:
private void RandomShaffle() { const int n = 20; // A series of 20 tickets Random r = new Random(10); int curnumber = 0; for(int i = 0; i < n ; i ++) { curnumber = r.Next(100000, 999999); // Generate a number in a given range if (!num.Contains(curnumber)) // Check the list of numbers for a match with the current one num.Add(curnumber); // Add to list else i--; // We roll back the iteration backward } }
我們指定活動中的獎券數量,還有生成號碼的范圍。我想要六位數字,所以我指定了一個從100,000到999,999的范圍。
現在,在屬性檢查器中選擇報表對象:
對他來說,我們創建一個ReportStart事件:
在事件處理句柄中,我們生成一個號碼列表,并將其作為數據源在報表中進行注冊。
private void _StartReport(object sender, EventArgs e) { RandomShaffle(); Report.RegisterData(num, "Numbers"); }
現在是創建報表模板的時候了。現在報表還沒有連接到我們正在準備的數據源。我們先按照原樣運行報表。當然來,我們會得到一個空白的頁面。返回到編輯頁面。現在我們可以選擇數據源:
在數據帶上創建一個包含兩張獎券的簡單模板:
運行報表:
查看獎券列表。它仍然會繼續進行打印和裁切。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn