ASP.NET 在 Master 中更新元素?

标签 asp.net compiler-errors master-pages

我是一名网页设计师,所以我很少接触 .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/

相关文章:

c# - ASP.NET Core 本地化小数字段点和逗号

c# - 如何访问在ashx中修改的aspx中的 session ?

python - 您如何处理使用Scrapable FormRequest变灰的多个下拉表单

asp.net - 如何让 ASP.NET WebForms 路由正确路由 .asmx JSON 调用?

c# - 如何提高返回到 asp.net mvc 中的 View 和输出的包含 5000 个对象的列表的性能?

c++ - C2228使用decltype时出错

compiler-errors - SMLNJ错误: type constructor list given 0 arguments, wants 1

.net - 居中内容占位符

css - 使用 CSS 在 MVC 母版页中创建三列布局

javascript - 将客户端处理程序从内容页添加到母版页控件