2012-07-21 192 views
0

我有一個未綁定的datagridview視圖。第一個負載總是運行得非常快,但第二個負載慢了大約20倍。DataGridView「第二」加載速度慢得多

我做了以下每次如果我刪除此代碼的第二和後續加載的速度快(不幸的是我必須保持這種顏色的邏輯):

  for (int ri = 0; ri < pdgv.Rows.Count; ri++) 
      { 
       for (int ci = 0; ci < pdgv.Columns.Count; ci++) 
       { 
        if (pdgv.Columns[ci].Frozen) 
        { 
         pdgv[ci, ri].Style.BackColor = v.Frozen_BackColor; 
         pdgv[ci, ri].Style.ForeColor = v.Frozen_ForeColor; 
         pdgv[ci, ri].Style.Font = v.Frozen_Font; 
         if (pdgv[ci, ri].OwningColumn.Name.StartsWith("yn_") && 
          pdgv[ci, ri].Value != null && 
          pdgv[ci, ri].Value.ToString() == "1") 
         { 
          pdgv[ci, ri].Style.BackColor = Color.Red; 
          pdgv[ci, ri].Style.ForeColor = Color.White; 
         } 
        } 
        if (pdgv.Columns[ci].ReadOnly) 
        { 
         pdgv[ci, ri].Style.BackColor = v.ReadOnly_BackColor; 
         pdgv[ci, ri].Style.ForeColor = v.ReadOnly_ForeColor; 
         pdgv[ci, ri].Style.Font = v.ReadOnly_Font; 
        } 
       } 
      } 
+1

爲什麼不把這個顏色邏輯移動到''ItemDatabound''或''grid''的任何其他'數據綁定事件??? – yogi 2012-07-21 06:35:22

+0

我認爲ItemDatabound使用ASP.NET不是C#/ Winforms的System.Web.UI.WebControls – Scott 2012-07-22 15:12:35

回答

0

我處置和加載第二次之前重建的datagridview它和第一次加載一樣快。