无法从后面的代码访问用户控件的子控件

时间:2014-04-06 16:11:20

标签: c# asp.net .net webforms user-controls

我正在尝试访问某些用户控件'从代码背后的子控件。他们中的一些人正在工作而另一些人没有有缺陷的用户控件没有设计器文件。我想知道这是不是这个原因?如果是这样,那么我就无法从头开始创建一些控件,因为它们太复杂了,我的设计师发送它们没有设计器文件,当他走到城外时,我无法给他回复代码来纠正。 / p>

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

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;
    }
}

2 个答案:

答案 0 :(得分:1)

尝试从头开始创建ascx,以显示设计师。

答案 1 :(得分:0)

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