我希望能够扩展System.Web.UI.Page类,然后从Markup轻松访问这些属性。我知道我可以从代码隐藏中做到这一点,但是有可能来自Markup吗?参加以下课程。
public class MyBasePage : System.Web.UI.Page {
public bool DoesThisWork { get; set; }
}
然后我希望能够从html标记访问它,可能在@Page指令中。
<%@Page Language="C#" DoesThisWork="False" ... %>
当然上面的页面使用MyBasePage类而不是System.Web.UI.Page。
答案 0 :(得分:4)
我认为问题主要集中在如何在页面指令中使用自定义属性 - 答案取决于您使用的是 Web应用程序项目还是网站
对于网站,您需要将 CodeFileBaseClass 分配给非部分类(在 App_Code 下或在外部程序集中)。对于 Web应用程序,设置Inherits指令就足够了。
答案 1 :(得分:0)
是。您可以从标记访问基页的属性,就像页面上的任何其他属性一样。
例如:
<a href="<%=MyBasePageProperty %>">this is a link</a>
答案 2 :(得分:0)
不是直接来自HTML,如您的示例中所示,但您可以这样做:
<td>Result: <%=DoesThisWork.ToString()%></td>