无法从代码隐藏访问用户控件的子控件

本文关键字:控件 用户 访问 隐藏 代码 | 更新日期: 2023-09-27 17:57:11

我正在尝试从代码隐藏访问某些用户控件的子控件。其中一些正在工作,而另一些则没有。错误的用户控件没有设计器文件。我想知道这是不是原因?如果是这样,那么我无法从头开始创建一些控件,因为它们太复杂了,我的设计师在没有设计器文件的情况下发送了它们,并且当他出城时,我无法将代码返回给他以更正。

此外,它们看起来很棒,没有设计视图中的设计师文件。但是当我写这样的东西时:

Button1.Visible=false;

它显示 Button1 在当前上下文中不存在。请告诉我如何解决这个问题?

以下是其中一个错误用户控件的标记:

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="commentUI.ascx.cs" Inherits="commentUI" %>
<asp:Button ID="Button1" runat="server" Text="Button" />

代码隐藏文件:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class commentUI : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Button1.Visible = false;
    }
}

无法从代码隐藏访问用户控件的子控件

尝试从头开始创建一个 ascx,它也会显示设计器。

在@raja提示的帮助下,我找到了解决方案。我将Inherits属性更新为Inherits="MyProjectNamespace.User_Controls.commentUI"并且它有效。