2014-10-28 68 views
-6

我想直接將數組綁定到網格視圖控件,我試圖在網格視圖控件上顯示細節。使用DataGrid視圖時數組邊界以外的索引?

我嘗試了下面的代碼,但它拋出了一些錯誤。請幫我找到適當的解決方案。謝謝。

代碼:

protected void ddlCircle_SelectedIndexChanged(object sender, EventArgs e) 
{ 
ShadingAnalysisDataSetTableAdapters.tbl_CadEngineersTeamTableAdapter cd; 
cd = new ShadingAnalysisDataSetTableAdapters.tbl_CadEngineersTeamTableAdapter(); 
DataTable dt = new DataTable(); 
dt = cd.GetAvailableData(ddlCircle.SelectedValue); 

int x, y; 

DataTable dt3 = new DataTable(); 
dt3 = cd.GetTeam(); 
y = dt3.Rows.Count; 

x = dt.Rows.Count; 
DataTable dt2 = new DataTable(); 
dt2 = cd.GetAssignTeam(x);   

string[] strArr = new string[dt.Rows.Count]; 
int i = 0; 

testc:        
foreach (DataRow r in dt2.Rows) 
    {     
    strArr[i] = r["Team"].ToString(); 
    i++; 
    if (i >= x - 1) 
    { 
     break; 
    } 
    if (i >= y) 
    { 
     goto testc;  
    }   
    } 
GridView2.DataSource = strArr[i]; 
GridView2.DataBind(); 
} 

回答

1

GridView2.DataSource = strArr[i];此行可能會產生誤差,對不對?這是因爲你的最後一次迭代中增加idt2.Rows.Count + 1

寫這

if (i > 0) GridView2.DataSource = strArr[i - 1]; 

的最後一道防線。

+0

現在錯誤沒有顯示,但gridview沒有顯示任何值。 – Vipin 2014-10-28 11:54:59

+0

您確定您的表格包含任何值嗎?嘗試調試你的循環... – HimBromBeere 2014-10-28 11:56:58

+0

是的,表包含值。 – Vipin 2014-10-28 13:44:11

相關問題