我有一個gridview,對於gridview的一部分,我想做一些事情,另一部分,我想做另一件事。 從索引0到索引14一樣,執行此操作。 從索引15到30,請做到這一點。GridView從一個索引到另一個索引
我的想法是我正在生成一個PDF文件,如果GridView有0-14行,它會創建1頁。如果它具有15-30行,則會創建具有不同設計的另一個頁面,如此等等...... 這發生在「打印」按鈕的Click事件中。
它可能和如何?
下面是一些代碼我有這樣的:
string listeMarchandises = String.Empty;
var i = 0;
foreach (GridViewRow row in GridViewMarchandises.Rows)
{
if (i <= 14)
{
if (row.RowType == DataControlRowType.DataRow)
{
Label LabelNumCpte = (Label)row.FindControl("LabelNumCpte");
Label LabelNumCc = (Label)row.FindControl("LabelNumCc");
Label LabelNbrCom = (Label)row.FindControl("LabelNbrCom");
TextBox TextBoxNbrRec = (TextBox)row.FindControl("TextBoxNbrRec");
Label LabelDescription = (Label)row.FindControl("LabelDescription");
TextBox TextBoxCoutUnitaire = (TextBox)row.FindControl("TextBoxCoutUnitaire");
Label LabelCoutTotal = (Label)row.FindControl("LabelCoutTotal");
listeMarchandises += "<tr valign=\"top\"><td align=\"center\">" + LabelNumCpte.Text.Trim() + "</td><td align=\"center\">" + LabelNumCc.Text.Trim() + "</td><td align=\"center\">" + LabelNbrCom.Text.Trim() + "</td><td align=\"center\">" + TextBoxNbrRec.Text.Trim() + "</td><td> " + LabelDescription.Text.Trim() + "</td><td align=\"right\">" + TextBoxCoutUnitaire.Text.Trim() + " $ " + "</td><td align=\"right\">" + LabelCoutTotal.Text.Trim() + " $ " + "</td></tr>";
}
i++;
}
if (i >= 15 && i <= 30)
{
//do the other thing
}
}
提前感謝!
您必須閱讀本SO後,無論您想前n個索引項或收集或別的東西前n行基於某些條件想想你的情況。 http://stackoverflow.com/questions/43021/how-do-you-get-the-index-of-the-current-iteration-of-a-foreach-loop – haraman
爲什麼你不具體說明它是什麼你想或許你可以在OnDataBound事件中進行編碼。你能更具體嗎 – MethodMan
我很抱歉我的解釋不清楚。我的想法是我正在生成一個pdf文件,如果GV有0-14行,它會創建1頁。如果它有15-30行,它會創建另一個頁面,等等...... @JohnPaul幫助我解決了代碼和問題。 :) – Yannick