Вот моя страница Default.aspx (без лишних деталей):
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<div id="login">
<!-- a bunch of markup has been removed, so this html will appear wrong and not valid, but it actually is -->
<table align="center" width="80%" cellpadding="0" cellspacing="0" class="loginBg">
<tr>
<td colspan="2"><img src="images/Login_top.jpg" /></td>
</tr>
<asp:Panel runat="server" ID="pnlLoginIn">
<tr>
<td style="padding-left:20px;">Username</td>
<td style="padding-right:15px;" align="right"><asp:TextBox id="txtUsername" runat="server" /></td>
<asp:RequiredFieldValidator runat="server" ID="rfvUserName" ErrorMessage="*" ControlToValidate="txtUsername" ValidationGroup="credentials" Display="Dynamic" />
</tr>
<tr>
<td style="padding-left:20px;">Password</td>
<td style="padding-right:15px;" align="right"><asp:TextBox ID="txtPassword" TextMode="Password" runat="server" /></td>
<asp:RequiredFieldValidator runat="server" ID="rfvPassword" ErrorMessage="*" ControlToValidate="txtPassword" ValidationGroup="credentials" Display="Dynamic" />
</tr>
<!-- BUT THE PANEL IS HERE?! -->
<asp:Panel ID="pnlInvalidCredentials" runat="server">
<tr>
<td colspan="2" align="center" style="color: Red;"><asp:Literal runat="server" ID="litInvalidCredentials" Text="Invalid Username or Password" />
</td>
</tr>
</asp:Panel>
<!-- more code has been removed down here...I just left the block commented in where the pnlInvalidCredential lives -->
</asp:Content>
Вот код (за исключением ненужных деталей):
namespace webapp
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
(webapp.MasterPages.MasterPage)Page.Master).headerImage = "default";
this.Master.headerImage = "default";
if (!Page.IsPostBack)
{
this.pnlInvalidCredentials.Visible = false; // error is here
this.BindPressRoomItem();
}
}
}
}
Эта страница / code-behind является верхним уровнем, это не папка или что-то еще. Также этот проект является веб-приложением ASP.NET, которое заимствует код унаследованного проекта site . Я не добавлял «Существующие» ни в какие файлы, все файлы были «Добавить новые» для предотвращения проблем совместимости. Пробовал это , не сработало.
В выделенном фрагменте кода каждая попытка манипулировать элементами, объявленными на странице aspx, приводит к ошибке вроде:
«_ По умолчанию» не содержит определения для «pnlInvalidCredentials»
или
В этом контексте имя txtUsername не существует.