我有网站项目,其中包含一些.ascx和.aspx文件。我在.ascx文件中添加了新元素<asp:TextBox ID="tb1" runat="server" ... />
,并使用以下元素在适当的.ascx.cs文件中编写了一些代码:tb1.Text = "SomeText";
。当我编译这个项目时,我收到以下错误:当前上下文中不存在名称'tb1'。
如何强制刷新.ascx页面的标记?我使用网站项目,我无法将其类型更改为Web应用程序。
UPD:我有网站项目,其中包含 NOT .ascx.designers.cs文件。我无法将我的项目类型更改为Web应用程序。
答案 0 :(得分:1)
除非此处发生其他事情,否则听起来designer.cs
文件可能不同步。尝试将控件剪切并粘贴回标记,或者进入用户控件的设计器文件并手动添加TextBox
:
protected global::System.Web.UI.WebControls.TextBox tb1;
答案 1 :(得分:0)
您的设计文件似乎没有与文件后面的代码连接。
您能否确认是否按以下方式定义,
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="yourcontrol.ascx.cs" Inherits="CompleteNameSpace.ClassName" %>