Ciao a tutti,
ho qualche problema con l'inserimento e la lettura di dati in una tabella contenente textbox e label in un'applicazione ASP.NET
Ho individuato 2 metodi per farlo ma entrambi creano problemi.


- Metodo 1
riesco a recuperare i dati senza problema , ma riesco a scrivere solo sulle celle BoundField, non sulle celle TemplateField


codice della pagina aspx
codice HTML:
<asp:GridView ID="GridView2" HeaderStyle-BackColor="#3AC0F2" HeaderStyle-ForeColor="White"    runat="server" AutoGenerateColumns="false" OnKeyUp="GridView2_KeyUp" OnRowDataBound = "OnRowDataBound" OnSelectedIndexChanged = "OnSelectedIndexChanged"        enableEventValidation="true">    
<Columns>
<asp:TemplateField HeaderText="p.min">
<ItemTemplate>
<asp:TextBox ID="cell1" runat="server" style="width:70px;"></asp:TextBox>          </ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="cell2" HeaderText="cell2" ItemStyle-Width="300" />

codice della pagina cs per scrittura
codice HTML:
DataTable dtable = new DataTable();dtable.Columns.AddRange(new DataColumn[14] { 
new DataColumn("cell1"), new DataColumn("cell2")});
dtable.Rows.Add("dati1", "dati2");

codice della pagina cs per lettura
codice HTML:
TextBox txt1 = (TextBox)GridView1.Rows[cont].FindControl("cell1");
valuetest = txt1.Text;

- Metodo 2
riesco a scrivere sulle celle BoundFielde TemplateField ma non riesco a recuperare i dati dalla pagina.


codice della pagina aspx
codice HTML:
<asp:Placeholder ID="PlaceHolder1" runat="server" ></asp:Placeholder>

codice della pagina cs per scrittura
codice HTML:
Table tbl = new Table();
PlaceHolder1.Controls.Clear();
int tblRows = 3;
int tblCols = 3;
PlaceHolder1.Controls.Add(tbl);
for (int i = 0; i < 3; i++){
TableRow tr = new TableRow();
for (int j = 0; j < 3; j++){   
TableCell tc = new TableCell();   
TextBox txtBox = new TextBox();   
txtBox.ID = "tbox"+i+""+j;   
txtBox.Text = "tbox"+i+""+j;   
boxLista[j]= txtBox; // i valori non vengono modificati se modifico la tabella  
tc.Controls.Add(txtBox);   
tr.Cells.Add(tc);}   
tbl.Rows.Add(tr);
}

codice della pagina cs per lettura
Eccezione generata: 'System.NullReferenceException'
codice HTML:
TextBox txt1 = (TextBox)PlaceHolder1.FindControl("tbox01");


Grazie.