2010-03-22 100 views
2

我有一個表,該表類似於這樣ASP.net訪問控制動態

<asp:TableRow><asp:TableCell>Question 1</asp:TableCell><asp:TableCell ID ="Question1Text"></asp:TableCell></asp:TableRow> 
     <asp:TableRow><asp:TableCell ColumnSpan="2"> 
      <asp:RadioButtonList ID="RadioButtonList1" runat="server"><asp:ListItem>Yes</asp:ListItem><asp:ListItem>No</asp:ListItem> 
      </asp:RadioButtonList> 
     </asp:TableCell></asp:TableRow> 
     <asp:TableRow><asp:TableCell> 
      <asp:TextBox ID="TextBox1" TextMode="MultiLine" runat="server"></asp:TextBox></asp:TableCell></asp:TableRow> 
     <asp:TableRow><asp:TableCell>Question 2</asp:TableCell><asp:TableCell ID ="Question2Text"></asp:TableCell></asp:TableRow> 
       <asp:TableRow><asp:TableCell ColumnSpan="2"> 
      <asp:RadioButtonList ID="RadioButtonList2" runat="server"><asp:ListItem>Yes</asp:ListItem><asp:ListItem>No</asp:ListItem> 
      </asp:RadioButtonList> 
     </asp:TableCell></asp:TableRow> 
     <asp:TableRow><asp:TableCell> 
      <asp:TextBox ID="TextBox2" TextMode="MultiLine" runat="server"></asp:TextBox></asp:TableCell></asp:TableRow> 

我希望能夠系統地存取權限表格單元格中的ID例如

for (int i = 1; i<3 ; i++) 
{ 
// i want to be able to access the table cell with the ID Question1Text then Question2Text and so on 
} 

是這甚至可能??

回答

2
for(int i = 0; i < 3; i++) 
{ 
    string id = string.Format("Question{0}Text", i); 
    TableCell cell = (TableCell) FindControl(id); 

    // do whatever you want with the cell 
} 

您可以使用FindControl來搜索具有給定標識符字符串的控件的控件樹。

雖然我必須說,我不認爲我會寫這樣的代碼。我會簡單地定義一個普通的HTML表格,然後在我需要特定控制文本的地方使用控件。你在這裏得到的東西對我來說很難解析和理解(它是否由設計者產生,也許呢?)

+0

這個代碼是我寫的,我唯一想這樣做的唯一原因就是問題存儲在數據庫中,我有大約30個問題,我認爲這會更容易動態添加問題文本!我想創建一些反饋,如果你有任何想法,使它更容易,這將是偉大的! – c11ada 2010-03-22 00:37:29

+0

@ c11ada:查看數據綁定控件,如DataList和Repeater。 – AMissico 2010-03-22 00:55:57