Если вы измените свой код в openNav для обработки и открытия, и закрытия, это решит проблему.
function openNav() {
var w = document.getElementById("mySidenav").style.width;
if(w === "250px"){
document.getElementById("mySidenav").style.width = '2px';
}else {
document.getElementById("mySidenav").style.width = '250px';
}
}
Экземпляр страницы и все его компоненты "выйдут из объема", когда запрос завершится, например, они становятся имеющими право на GC. Таким образом, Ваш ListView выйдет из объема наряду со Страницей/пользовательскими элементами управления на нем. Вы не должны отказываться от подписки (если Вы не подписываетесь на событие, которое принадлежит некоторому одиночному элементу, который переживает каждый запрос, и используйте один из методов страницы как обработчик событий, например).
То же самое допустимо для предъявителя (снова, пока этот предъявитель используется только с одной страницей и выходит из объема после этого).
Обычно нет. События, как предполагается, выводятся автоматически, когда страница разгружается. ПРЕДПОЛАГАЕМЫЙ быть. Я столкнулся с ошибкой прежде (в.NET 1.1), где это не имело место.
Я не потружусь отказываться от подписки, если я не замечу проблемы со страницей (как, метод, называемый 20 раз от фантома в стеке вызовов: это обычно - знак чего-то не отписываемого правильно).