2010-07-03 63 views
0

我正在使用網站(asp.net,C#)來查看gridview中的一些細節。在該gridview中,我已經動態地生成了複選框。所以它將放置在該GridView中的任何單元格。我發現使用FindControl()在grdview中控制,但我不能得到該單元格索引...現在我想要得到那個放置該複選框的excact單元格索引。我應該如何獲得細胞指數?如何在gridview中獲取單元格索引

請別人告訴我這個問題的解決方案。

在此先感謝。

我爲獲得控制是代碼:

if (HeaderCell.Text.Contains(strColumnName)) 
{ 
    CheckBox chk = GrdDynamicControls.Rows[index].FindControl(chkCheckBox1.ID) as CheckBox; 
    chk.Checked = true; 
    strCelValue = chk.Checked.ToString(); 
} 
+0

在CellValueChanged事件應該有EventArgs的e,e.RowIndex或類似的東西? – 2010-07-03 12:45:23

回答

0

試試這個:

int theCellNumberWhatINeed = -1; 
for (int cellNumber = 0; cellNumber < GridView1.Rows[index].Cells.Count; cellNumber++) 
{ 
    foreach (Control ctrl in GridView1.Rows[index].Cells[cellNumber].Controls) 
    { 
     if (ctrl.ID == "aCheckBox") // or compare by clientid... etc 
     { 
      theCellNumberWhatINeed = cellNumber; 
      break; 
     } 
    } 
} 
if (theCellNumberWhatINeed > -1) 
{ 
    // ... 
} 

不是最優雅的解決方案,但與工作沒有創建自己的內置的GridView控件。

0

您可以使用事件參數ê

e.Item.ItemIndex

它會返回一個整數

希望這將有助於

相關問題