【问题标题】:Controls in .aspx not visible in .aspx.cs, have you seen this before?.aspx 中的控件在 .aspx.cs 中不可见,您以前见过吗?
【发布时间】:2010-06-29 14:12:44
【问题描述】:

您是否遇到过在 .aspx 中定义的控件在 .aspx.cs 中不可见的情况?即当您编译时,它表示您的标签或文字等尚未声明。

这是 vs.net 中的错误吗?

这就是我所做的,我用相同的文件创建了一个新文件夹,并复制了 .aspx 内容和代码隐藏,然后在新文件中更改了对旧文件的引用(如命名空间,代码隐藏引用在aspx 等)

我在 .aspx 和 .aspx.cs 上都使用了无法比较的方法,以确保我更改了所有内容,但是当我编译时,我得到了大约 25 个错误。

这对我来说毫无意义,啊。

(使用 vs.net 2008)

【问题讨论】:

  • 检查设计器文件,看看它是否在那里声明?哦,请确保设计器文件与您的 .aspx.cs 文件具有相同的命名空间。
  • 好的,我没有设计器文件,但原件也没有。
  • 你的控件有runat="server"吗?
  • 是的,设计器文件是实际声明控件的位置。它有点像 aspx 和 codebehind 之间的桥梁。在过去 (VS2003) 中,声明位于 .aspx.cs 文件的一个区域中,但幸运的是,微软将它们拆分成一个单独的 (.designer) 文件,以使事情变得更简洁。

标签: c# asp.net visual-studio


【解决方案1】:

我以前见过这个,但只是智能感知没有捡起它。编译器仍然可以识别一切。您确定将runat="server" 放入您的aspx 页面吗?

【讨论】:

  • 我使用了超越比较工具比较了文件,所以除了命名空间差异等之外,它完全一样。
【解决方案2】:

我不确定这是否是您的原因,但我已经导致这种情况发生了几次,主要是通过在我的开发服务器上运行网站时添加服务器控件,并使用自定义控件。

由于 aspx.designer.cs 文件在站点运行时是只读的,因此无法添加控件的设计代码。

我的首选解决方案是删除设计器文件,右键单击 aspx 文件,然后单击“转换为 Web 应用程序”。

【讨论】:

    【解决方案3】:

    当我将一个复制到另一个和.aspx标签时,我已经这样做了

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="MarkPage.aspx.cs"
        Inherits="Web.Apps.MyPrototype.MarkPage" %>
    

    与我后面的代码不匹配:

    namespace Web.Apps.FirstPrototype
    {
        public partial class MarkOtherPage : System.Web.UI.Page
    

    【讨论】:

      【解决方案4】:

      您能否检查设计器文件以查看控件是否在其中定义了它们的类型?如果不是,我使用这种技术让它再次自动生成:

      • 在源视图中使用控件剪切标记。
      • 转到设计视图并粘贴复制的标记。
      • 再次构建项目。

      通常我可以重新生成设计器文件,然后在代码隐藏中使用控件。

      Grz,克里斯。

      【讨论】:

        【解决方案5】:

        更改为设计模式或拆分模式,进行一些小更改(例如在某处输入空格),然后保存。这将重新生成丢失的 Designer.cs 文件

        【讨论】:

          【解决方案6】:

          您的项目中是否有与文件同名的文件夹?

          【讨论】:

            【解决方案7】:

            您确定您的命名空间正确吗?您是否在 .cs 文件中明确声明了命名空间?

            尝试删除显式命名空间声明。

            此外,请确保部分类声明是正确的 - 如果您发布一些关于错误消息的想法可能会有所帮助,因为那里可能有线索。

            最后,我曾见过由于与某些“特殊”名称(全局、本地等)冲突而导致控件混乱的情况,尽管我认为自 VS2005 以来我还没有见过这种情况。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2010-10-19
              • 2011-05-28
              • 2012-03-03
              相关资源
              最近更新 更多