C# 在aspx页的代码隐藏中找不到控件
我在InfoEdition.aspx中有此代码:C# 在aspx页的代码隐藏中找不到控件,c#,asp.net,.net,master-pages,code-behind,C#,Asp.net,.net,Master Pages,Code Behind,我在InfoEdition.aspx中有此代码: <%@ Page Title="" Language="C#" MasterPageFile="~/Espace_Candidat/SousCandidat.master" AutoEventWireup="true" CodeFile="InfoEdition.aspx.cs" Inherits="Espace_Candidat_InfoEdition" %> <asp:Content ID="Content1" Conten
<%@ Page Title="" Language="C#" MasterPageFile="~/Espace_Candidat/SousCandidat.master" AutoEventWireup="true" CodeFile="InfoEdition.aspx.cs" Inherits="Espace_Candidat_InfoEdition" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ChildContent2" Runat="Server">
<div class="span9">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</div>
</asp:Content>
找不到文本框
- 这一错误的原因是什么
- 我怎样才能修好它
代码文件
更改为代码隐藏
已更新
检查InfoEdition.aspx页面的“构建操作”属性是否设置为?它应该设置为“Content”。我认为您应该使用
var txt1=Content1.FindControl(“TextBox1”)
,然后如果txt1
不为空,就像通常使用TextBox1
一样使用它
var txt1 = Content1.FindControl("TextBox1");
txt1.Text = "some value";
我的回答有点晚,但您可以做的一件事是检查您的ASPX页面所在的文件夹中是否存在设计器文件 如果缺少设计器文件,代码隐藏将找不到您的字段 为了重新创建designer字段,您需要使用
VS2019Project-->转换为Web应用程序菜单选项尝试重建解决方案。这是一个网站还是一个web应用程序?您是否尝试在浏览器中查看它,而不是依赖Visual Studio intellisense-它有时无法更新它是一个web应用程序请为我们提供代码隐藏页面的完整代码…您可以访问Content1控件吗?另外,在代码隐藏中包装代码的命名空间(如果有)是什么?您可能需要将其添加到“Inherits”属性中,如“Mynamespace.Espace_Candidate_InfoEdition”。不存在命名空间,我无法访问Content1这很好,但通过“Textbox1”访问它也应该可以。我会仔细观察其他错误,因为您可能会在其他地方运行,因为无论是什么原因导致了此问题。当它是一个子控件时,您不能仅访问它,您必须通过父控件集合访问它,如我上面所示。或者至少,当我向
内容、转发器、DataView/DataGrid/GridView
控件添加控件时,我总是必须这样做。但这看起来不像子控件。它直接放在页面上。应该在代码隐藏中为其创建一个强类型字段。
var txt1 = Content1.FindControl("TextBox1");
txt1.Text = "some value";