我正在尝试找出如何在我的主.aspx页面中找到一个类的"div“,这是可能的吗?如果是这样的话,是怎么做的?我试过下面的代码,但不起作用
HtmlGenericControl step1 = (HtmlGenericControl)Page.FindControl("step1")我知道这是我在代码隐藏文件中做这件事的方式,但在这种情况下,我想从一个类文件中做这件事。
提前谢谢你。
基本上我试图实现的是这样的,我在我的页面中有多个runtat=“服务器”visible=“假”,当满足某些条件时,我希望能够将visible=更改为“真”。我将这个场景放在多个页面中,所以我希望能够创建一个类并检查其中的条件,并通过这种方式使div可见或不可见
发布于 2012-10-17 13:32:07
div元素必须具有服务器“runat=”属性:
<body>
<form id="form1" runat="server">
<div id="step1" runat="server"></div>
</form>
</body>现在,您可以在单独的类中找到具有方法的控件,该类是从页面的代码隐藏类中调用的:
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Class1 class1 = new Class1();
class1.FindDiv(this);
}
}分隔的类:
public class Class1
{
public HtmlGenericControl FindDiv(Page page)
{
HtmlGenericControl step1 = (HtmlGenericControl)page.FindControl("step1");
return step1;
}
}发布于 2012-10-17 13:29:03
如果你使用ASP Panel而不是div,你可以访问它并且Panel呈现为div。如果你给一个div提供了runat=“服务器”,你应该能够访问它。
发布于 2012-10-17 13:32:21
如果它不是服务器端控件,则无法执行此操作。
如果是HTML控件,则需要将runat="server"属性设置为div,以便在后面的代码中找到它。
https://stackoverflow.com/questions/12927614
复制相似问题