2012-10-18 23 views
1

我有一個問題,您可以在標題中看到。'TextBox'類型的控件'ctl07'必須放置在runat = server的表單標籤中。

<form id="form1" runat="server"> 
    <div> 
     <br /> 
     <asp:GridView ID="GridView1" runat="server"> 
     </asp:GridView> 
     <asp:TextBox ID="mac_id" runat="server"></asp:TextBox> 
     <asp:Button ID="Button1" runat="server" onclick="Button1_Click" 
      Text="Temp Ekle" /> 
    </div> 
    </form> 

內aspx.cs我創建一個表,我插入來自數據庫中的一些值這個名爲「MAC_ID」文本框中。

TableCell cel = new TableCell(); 
mac_id.Text = Convert.ToString(myDataTable.Rows[0][2]); 
cel.Controls.Add(mac_id); 
rw.Cells.Add(cel); 

它是表單標籤內,它是RUNAT =「服務器」。這是代碼,使用MAC_ID textbox.there沒有代碼,操作這些textbox.I只想顯示用戶的ID。我沒有使用任何渲染控件或文本框有。我也檢查其他solutins,但他們都使用渲染或作家我不是這樣,因爲我打開一個新的問題。 我希望我能解釋我的問題夠了。感謝您的幫助。

+2

是什麼'rw'最後一行避免這種execption? – mcalex

+1

如果我正確理解你的情況,你已經有了一個TextBox的mac_id,然後你試圖將控件移到代碼後面的表格單元格中?我將刪除您的aspx文件中的TextBox,並在後面的代碼中創建Textbox控件。 –

+0

rw是我的表格行@mcalex我現在正在嘗試這個建議nicole –

回答

1

您可以通過覆蓋VerifyRenderingInServerForm

public override void VerifyRenderingInServerForm(Control control) 
{ 
    /* Confirms that an HtmlForm control is rendered for the specified ASP.NET 
    server control at run time. 
    Hence, no exception. */ 
} 
+0

您可能還需要在'<%@Page />'元素中設置'EnableEventValidation =「false」'。請參閱http://stackoverflow.com/q/28155089/153923 – jp2code

相關問題