2011-06-27 72 views
1

我正在創建一個查詢數據庫並計算員工銷售數據的報表應用程序。查詢的結果存儲在數據集中。目前,我正在將工具箱中的圖表控件拖動到頁面上以創建控件。這個圖表控件位於一個名爲slideshow的div標籤中,因爲我使用jQuery來創建幻燈片。每個圖表都綁定到數據集中的一行。如何以編程方式向ASP.net添加圖表控件c#頁面

但是,我現在面臨的問題是,如果添加了新的工作人員,我將不得不隨便亂動網頁以顯示新員工的圖表。有什麼方法可以說:「對於數據集中的每一行,在幻燈片div標籤中創建一個圖表控件?」

回答

0

ASP.net和jquery之間的交互可能有點棘手,因爲你正在處理服務器端與客戶端。我建議你做的是從服務器端創建一個列表(例如在JavaScript中產生一個靜態JSON列表或使用AJAX),然後使用jQuery爲你的JSON列表中的每個員工創建你的圖表。

0

同意關於獲取服務器返回JSON並在jquery中做所有事情的想法 - 您應該看看新的ish jquery模板,非常容易將您的json轉換爲格式爲您需要的一組div標記。

0

是的,你可以做你所要求的。

假設您有一個包含某些行的數據集ds。你想爲每一行創建一個圖表。這裏是你可以做什麼:

1)您的網頁上聲明一個ASP面板:

<asp:Panel runat='server' id='pnlCharts' /> 

2)在你的後臺代碼,你會想要寫的東西是這樣的:

Dataset ds = getMyData(); 
foreach(Datarow row in ds.Tables[0].Rows) 
{ 
Chart chart = new Chart(); 
// Add code to design a chart from a *single* row 
Panel.Controls.Add(chart); 
} 

更新: 我雖然關於你的問題多一些。你也可以考慮使用ASP Repeater來做你想做的事。您也可以直接將圖表寫入您想要使用Chart.RenderControl()的頁面。

相關問題