Как создать код обработки событий в ASP.NET и поделиться им между элементами управления на нескольких страницах?
Например, две страницы с
<asp:Repeater runat="server" OnItemCreated="NavigationItemCreated">
Вместо того, чтобы реплицировать его для каждогостраница, которую я пытался поместить в класс, к которому обе страницы имеют доступ к
<asp:Repeater runat="server" OnItemCreated="MyHelper.NavigationItemCreated">
Класс выглядит следующим образом:
public class MyHelper
{
public static void NavigationItemCreated(object sender, RepeaterItemEventArgs e) { }
public static string MyProperty { get; set; }
}
Однако при попытке запуска появляется ошибка(происходит с static
или без него):
Сообщение об ошибке компилятора: CS1061: «ASP.page_default_aspx» не содержит определения «MyHelper» и не имеет метода расширения »MyHelper ', принимающий первый аргумент типа' ASP.page_default_aspx ', может быть найден (отсутствует директива using или ссылка на сборку?)
Я все еще могу получить доступ к MyProperty
с <%# MyHelper.MyProperty %>
,так что MyHelper
может использоваться страницей, но не обработчиками событий.
Обновление:
Сделал класс и код обработки событий статическими, и это тоже не работаети не помещает его в свое собственное пространство имен, и выпеть MyNamespace.MyHelper.NavigationItemCreated