C# Appcode文件夹cs类,可在aspx页上设置控件

C# Appcode文件夹cs类,可在aspx页上设置控件,c#,class,controls,app-code,C#,Class,Controls,App Code,我是c#新手,在appcode文件夹中创建了几个类作为方法。这些是从主类调用的,主类是包含大量HTML控件的aspx页面的代码。被调用的方法将使某些asp HTML控件可见/不可见,如Gridview1或Label1。但是,这些appcode类看不到主类的控件。我试图继承主类,但这似乎不允许我这么做。我是不是遗漏了一个概念?我需要使用名称空间吗?我需要使用指令吗?我是否需要以某种方式为我的主类添加前缀以继承它。我本以为任何方法都可以看到主aspx控件,所以我遗漏了一些东西。您是否有一个简单的代码

我是c#新手,在appcode文件夹中创建了几个类作为方法。这些是从主类调用的,主类是包含大量HTML控件的aspx页面的代码。被调用的方法将使某些asp HTML控件可见/不可见,如Gridview1或Label1。但是,这些appcode类看不到主类的控件。我试图继承主类,但这似乎不允许我这么做。我是不是遗漏了一个概念?我需要使用名称空间吗?我需要使用指令吗?我是否需要以某种方式为我的主类添加前缀以继承它。我本以为任何方法都可以看到主aspx控件,所以我遗漏了一些东西。您是否有一个简单的代码隐藏cs(a)的示例,以及一个使(a)控件不可见的简单appcode文件夹cs(B)?

如果您使用的是ASP.NET:

然后,您将拥有一个
.aspx
文件,其中包含您的控件(如标签、文本框等)。您还将拥有一个
.cs
文件,该文件与
.aspx
文件“协同工作”

假设您有以下代码:

     <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm7.aspx.cs" Inherits="Test.WebForm7" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:Label id="ThisIsYourLabel" runat="server" text="Make me invisible"/>
    </div>
    </form>
</body>
</html>
在您的情况下,您的app_code文件夹中有一组方法

我在app_代码中创建了一个小方法:

public class Tools
{
    public static boolean ChangeVisibility()
    {
        return false;
    }
}
换句话说:您可以访问
.cs
文件中
.aspx
页面上的控件。您无法直接从app\u code文件夹中的某个
.aspx
页面访问控件。您可以在页面的
designer.cs
文件中将访问级别从protected更改为public,但我肯定不会建议您这样做

如果运行此代码,您将不会在浏览器中看到任何内容,因为标签将设置为
Visible=false,但如果您调试它,您将看到它是如何工作的:)


希望有帮助

如果您使用的是ASP.NET:

然后,您将拥有一个
.aspx
文件,其中包含您的控件(如标签、文本框等)。您还将拥有一个
.cs
文件,该文件与
.aspx
文件“协同工作”

假设您有以下代码:

     <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm7.aspx.cs" Inherits="Test.WebForm7" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:Label id="ThisIsYourLabel" runat="server" text="Make me invisible"/>
    </div>
    </form>
</body>
</html>
在您的情况下,您的app_code文件夹中有一组方法

我在app_代码中创建了一个小方法:

public class Tools
{
    public static boolean ChangeVisibility()
    {
        return false;
    }
}
换句话说:您可以访问
.cs
文件中
.aspx
页面上的控件。您无法直接从app\u code文件夹中的某个
.aspx
页面访问控件。您可以在页面的
designer.cs
文件中将访问级别从protected更改为public,但我肯定不会建议您这样做

如果运行此代码,您将不会在浏览器中看到任何内容,因为标签将设置为
Visible=false,但如果您调试它,您将看到它是如何工作的:)


希望有帮助

我认为这可能会对您有所帮助..,您可以在appcode文件夹下的类文件中尝试类似的内容

using System.Web.UI.WebControls;
public class Tools()
{

public static void set_label_properties(Label lb)
{

lb.Visible=false;
lb.Text="Your status msg..";


}

}
在您的aspx.cs文件中,您需要在任何需要的地方调用此方法,并将适当的Web控件(标签)作为方法参数传递

Tools.set_label_properties(Label1);

我想这可能会对您有所帮助..,您可以在appcode文件夹下的类文件中尝试类似的内容

using System.Web.UI.WebControls;
public class Tools()
{

public static void set_label_properties(Label lb)
{

lb.Visible=false;
lb.Text="Your status msg..";


}

}
在您的aspx.cs文件中,您需要在任何需要的地方调用此方法,并将适当的Web控件(标签)作为方法参数传递

Tools.set_label_properties(Label1);

简,谢谢你。在这个例子中,我想做的是在Tools类中,而不是返回false,实际设置ThisIsYourLabel=false。我想答案是,正如您所指出的,我无法通过这种方式访问控件。此外,我认为您的示例为我提供了一个框架,我可以在其中使用。再次谢谢你,简,谢谢你。在这个例子中,我想做的是在Tools类中,而不是返回false,实际设置ThisIsYourLabel=false。我想答案是,正如您所指出的,我无法通过这种方式访问控件。此外,我认为您的示例为我提供了一个框架,我可以在其中使用。再次感谢你。