asp.net,報錯“上下文中不存在名稱‘控制項的ID’”

來源:互聯網
上載者:User

第一次碰到這樣的錯誤。

部分前台代碼如下:

<EmptyDataTemplate>                    <table cellspacing="0" rules="all" border="1" style="border-collapse: collapse;">                        <tr>                            <th>Customer_id</th>                            <th>CustomerName</th>                            <th>Operate</th>                        </tr>                        <tr>                            <td>                                <asp:TextBox ID="NewCusID" runat="server"></asp:TextBox>                            </td>                            <td>                                <asp:TextBox ID="NewCusName" runat="server"></asp:TextBox>                            </td>                            <td>                                <asp:Button ID="AddNewBtn" runat="server" Text="Add New Record"                                     onclick="AddNewBtn_Click" />                            </td>                        </tr>                    </table>                </EmptyDataTemplate>

報錯:上下文中不存在NewCusID和NewCusName

解決方案:

因為NewCusID和NewCusName在模板列中,所以不能直接使用。應該先使用FindControl找到控制項後再取值。

因此後台代碼應該按照下面的方式寫:

TextBox NewCusIDTextBox = this.form1.FindControl("NewCusID") as TextBox;TextBox NewCusNameTextBox = this.form1.FindControl("NewCusName") as TextBox;string cusID = NewCusIDTextBox.Text.ToString();string cusName = NewCusNameTextBox.Text;

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.