0
我必須將大量數據加載到動態網格視圖。具有基於數據動態創建的鏈接按鈕的網格視圖。 單擊鏈接按鈕時,應加載內網格。它工作正常。如何將大量數據轉換爲動態網格視圖
但每次單擊鏈接按鈕時,行邊界事件被觸發,以綁定主網格。
在行綁定事件中,內網格正在加載主網格中的每一行,該網格已被點擊。我在Session中維護了點擊鏈接按鈕的狀態(特定行的id字段),並使用會話值在主行網格中的每行上加載內行網格,該行網格與行綁定事件中的會話值相匹配。
但加載需要很長時間。在點擊鏈接按鈕並維護點擊鏈接按鈕內部網格時,是否有其他方式將數據綁定到動態網格視圖?
我的代碼是
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (strCallTypeName[intLoop].ToLower() != "total")
{
LinkButton lnk = new LinkButton();
lnk.Text = ((System.Data.DataRowView)(e.Row.DataItem)).Row[strCallTypeName[intLoop]].ToString();
lnk.CommandArgument = strCallTypeName[intLoop]
+ "|||"
+ ((System.Data.DataRowView)(e.Row.DataItem)).Row["UserId"].ToString()
+ "|||"
+ ((System.Data.DataRowView)(e.Row.DataItem)).Row["Service"].ToString()
+ "|||"
+ e.Row.RowIndex;
//lnk.Click += new EventHandler(lnk_Click);
//lnk.CommandName = "Edit";
lnk.Click += new EventHandler(lnk_Click);
lnk.ToolTip = strCallTypeName[intLoop];
lnk.CssClass = "lnk";
tc.Controls.Add(lnk);
string strUserID =grdSummaryCall.DataKeys[e.Row .RowIndex].Value.ToString();
string strSessionUserDetails = string.Empty;
strSessionUserDetails = (string)Session["GridUserDetails"];
if (strSessionUserDetails != string.Empty && strSessionUserDetails !=null)
{
string[] strSplitUserDetails = strSessionUserDetails.Split(new string[] { "~" }, StringSplitOptions.None);
Panel pnlTable = (Panel)e.Row.FindControl("pnlTable");
for (int i = 0; i < strSplitUserDetails.Length; i++)
{
string[] strUserDetails = strSplitUserDetails[i].Split(new string[] { "," }, StringSplitOptions.None);
if (strUserID == strUserDetails[1].ToString())
{
if (pnlTable.Visible == false)
{
GetUserCallDetails(strUserDetails, e.Row);
pnlTable.Visible = true;
}
}
}
}
}
}
我們不知道什麼*加載大量的數據*手段。你能告訴我們什麼是大量的日期記錄數,字段數?也許一些代碼就是你在做什麼。我們無法從這個問題中看出發生了什麼。 – IAbstract
感謝您的反饋。我的意思是記錄的數量。我有超過20000條記錄,併爲每個頁面綁定30條記錄。在每一行綁定上,我連接到SQL並獲取特定鏈接按鈕的內部網格細節。這個過程需要很長時間。 – Pooja