希望你周五过得愉快等等......好吧,这是我的问题:
我所有的 ASPX 页面都继承自一个名为 BasePage 的基类。 BasePage 继承自:
System.Web.UI.Page
现在,如何从我的页面库访问/设置我的 aspx 页面中的控件?我试过这个:
HyperLink hypMainMenu = (HyperLink)Page.FindControl("hypMainMenu");
hypMainMenu.NavigateUrl = AppConfiguration.AppSettings.Urls.MainMenu;
但是 hypMainMenu 始终为空 - 我找不到那个 SCSS 。有任何想法吗?或者这是不好的做法,有人可以推荐更好的方法吗?
提前致谢!
最佳答案
尽管什么是好做法和什么不是好做法是非常主观的,但我必须说,尝试从控件的基类访问任何内容 是不好的做法。一个基类应该只包含与继承它的所有类相关的代码,你怎么知道你以后写的每个页面都会有这个控制?
解决问题的更好方法(我假设只有一个地方有主菜单的代码)是编写一个 UserControl
并将其包含在每个页面上。如果您需要对该控件做一些特定的事情,您可以在 UC
的 CodeBehind
中完成。
关于c# - 从页面基类查找页面中的控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/839794/