2012-05-07 32 views
2

我有一個未知數或行和列的數據源。我正在使用設置爲自動生成列的網格視圖。我需要將每個單元格中的每個項目都轉換爲鏈接按鈕,以便回發處理。我知道如何動態地將控件添加到已知的行和單元格,但是當我不知道列名時會使其變得困難。有關如何產生這些結果的任何建議?添加鏈接到gridview中的所有單元格

+0

[Stack Overflow不是您的免費促銷網站™](http://meta.stackexchange.com/a/128560) – zimdanen

+0

http://forums.asp.net/t/1149071.aspx/1 – ray

+0

Ray i知道如何在知道列名時添加模板和控件。我的問題是如何將控件添加到單元格或每個單元格而不知道列名稱。我如何遍歷所有單元格以向它們添加鏈接按鈕? – thomasfagin

回答

3

試試這個爲出發點:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.DataRow) 
    { 
     foreach (TableCell cell in e.Row.Cells) 
     { 
      HyperLink myLink = new HyperLink(); 
      myLink.NavigateUrl = "somewhere.aspx"; 
      if (cell.Controls.Count > 0) 
      { 
       while (cell.Controls.Count > 0) 
       { 
        myLink.Controls.Add(cell.Controls[0]); 
       } 
      } 
      else 
      { 
       myLink.Text = cell.Text; 
      } 
      cell.Controls.Add(myLink); 
     } 
    } 
} 

注:我用C#編寫的解決方案後,按您的標記,但我注意到你最後的評論是在VB。讓我知道如果你需要我在VB中重新發布(在這種情況下,你應該更新標籤)。

+0

你搖滾,做到了。我如何評價你? – thomasfagin

+0

點擊答案左邊的數字上方的^箭頭以顯示這是一個很好的答案,然後單擊數字和箭頭下面的複選標記以標記爲接受的答案。 – zimdanen

相關問題