网络控件
<asp:TextBox id="txtUsername" runat="server" CssClass="input-block-level" placeholder="Username" type="text" required></asp:TextBox>
<asp:TextBox id="txtPassword" runat="server" CssClass="input-block-level" placeholder="Password" type="password" required></asp:TextBox>
背后的代码
Inherits System.Web.UI.MasterPage
Protected WithEvents txtUsername As System.Web.UI.WebControls.Literal
Protected WithEvents txtPassword As System.Web.UI.WebControls.Literal
错误:
解析错误:'txtPassword'已在'此类中声明为'受保护的事件txtPassword As System.Web.UI.Webcontrols.TextBox 'txtUsername'已在'this class
中声明为'Protected WithEvents txtUsername As System.Web.UI.Webcontrols.TextBox
可能是错误的原因是什么?
答案 0 :(得分:2)
我知道这已经晚了3年,但我刚刚解决了这个问题,我将分享我的解决方案,以帮助任何在这里磕磕绊绊的人。
当我注释掉一个控件,在项目的其他部分工作,然后取消注释它时,我收到了这个错误。
只需在aspx和aspx.vb中更改控件的ID,错误就会消失。
<!-- changed from txt to text -->
<asp:TextBox id="textUsername" runat="server" CssClass="input-block-level" placeholder="Username" type="text" required></asp:TextBox>
<asp:TextBox id="textPassword" runat="server" CssClass="input-block-level" placeholder="Password" type="password" required></asp:TextBox>
答案 1 :(得分:0)
当您向aspx页面添加控件时,您的控件将添加到与您的代码隐藏文件同名的部分类中。如果再次添加到代码文件中,您将收到错误。
答案 2 :(得分:0)
您可能有两个或多个具有相同类名的Web表单。
somepage.aspx 和 anotherpage.aspx 的内容:
<%@ Page ... Inherits="somepage" %>
...
somepage.aspx.vb 和 anotherpage.aspx.vb 的内容:
Partial Class somepage
...
End Class
在上面的示例代码中,将其他页。* 文件中的Inherits
属性和类名更改为anotherpage
可以解决问题。如果您使用C#,代码隐藏看起来会有所不同,但它的想法是相同的。