我是一名网页设计师,所以我很少接触 .NET 代码。我正在做一些简单的编码,将站点的一个区域的一些代码重新用于另一个区域。如何定位母版中的元素?我在调用包含 lblError 和 pnlError 的主控的页面中有以下内容...
public void AddError(string error)
{
if (error != "")
{
lblError.Text = error;
pnlError.Visible = true;
}
}
我收到一条错误消息,指出当前上下文中不存在这些项目。我如何告诉它在 master 中寻找元素?
最佳答案
您可以在任何页面的代码中使用以下代码:
var masterpage = this.Master as MyMasterPageClass;
MYMasterPageClass 是母版页的类型,转换为该类型将允许您访问页面的特定属性。
另请注意,您将无法直接访问控件,因为它们是私有(private)的。但是,您可以在母版页的代码中创建一个公共(public)属性,以允许您更改它们的值。
public partial class MYMasterPageClass : System.Web.UI.MasterPage
{
public string Error
{
get { return lblError.Text;}
set { lblError.Text = value; }
}
}
关于ASP.NET 在 Master 中更新元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6755042/