Chu*_*ill 6 .net c# asp.net user-controls master-pages
我要在我的母版页上访问一个方法.我有一个错误标签,我想根据我从我的网站收到的错误消息更新.
public string ErrorText
{
get { return this.infoLabel.Text; }
set { this.infoLabel.Text = value; }
}
Run Code Online (Sandbox Code Playgroud)
如何从我设置的用户控件或类中访问它?
要访问母版页:
this.Page.Master
Run Code Online (Sandbox Code Playgroud)
那么您可能需要转换为母版页的实际类型,以便您可以获取ErrorText属性或使您的母版页实现包含此属性的接口.
页面应包含下一个标记:
<%@ MasterType VirtualPath="~/Site.master" %>
Run Code Online (Sandbox Code Playgroud)
那么Page.Master将不会有任何类型,MasterPage而是您的母版页的类型,即:
public partial class MySiteMaster : MasterPage
{
public string ErrorText { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
页面代码隐藏:
this.Master.ErrorText = ...;
Run Code Online (Sandbox Code Playgroud)
其他方式:
public interface IMyMasterPage
{
string ErrorText { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
(将其放入 App_Code 或更好 - 放入类库)
public partial class MySiteMaster : MasterPage, IMyMasterPage { }
Run Code Online (Sandbox Code Playgroud)
用法:
((IMyMasterPage )this.Page.Master).ErrorText = ...;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13368 次 |
| 最近记录: |