Как сделать заметную верхнюю панель уведомлений в Windows Phone?
Как сделать заметную верхнюю панель уведомлений в Windows Phone?
Я новичок в C# и мире Windows Phone. Так что, может быть, мой вопрос имеет простой способ решить, но я много гуглял, и не получилось. вот моя цель: у меня в приложении работает таймер, он запрашивает услугу для уведомления каждый час, и в верхней части экрана отображается "панель уведомлений". получить информацию легко, но когда я хочу показать ее на странице, вот моя проблема:
1. Я использовал системный трей, чтобы показать мою информацию. Это работает, но потом я обнаружил, что нет никакого события касания или щелчка для индикатора индикации прогресса. Я даже добавляю событие в Touch.FrameReported в App.xaml.cs, но, тем не менее, когда я касаюсь области панели задач, событие не запускается.
2. Затем я хочу использовать динамический способ для достижения этой цели: добавить текстовый блок на текущую страницу. Я получил обработчик текущей страницы, но в случае, если я знаю только, что тип обработчика текущей страницы - PhoneApplicationPage, я не могу получить свой Root UI элемент (вся моя страница имеет корневой элемент с именем "LayoutRoot"). И когда я пытаюсь использовать метод отражения, чтобы получить свойство "LayoutRoot", возвращаемое значение равно нулю.
Код выглядит так:
Type type = PhoneApplicationPageHandler.getType()<
//I checked,the type is my page's type
type.getProperty("LayoutRoot") or type.getField("LayoutRoot")
//they all return null
Кстати: LayoutRoot - это сетка, и она описана в файле.xmal моей страницы.
Теперь я могу сделать так, чтобы все мои страницы наследовали страницу дефолта. На этой странице я буду реализовывать метод для выполнения моего второго способа имитации "сенсорной верхней панели".
но я думаю, что это кодирование безобразно.
Итак, может кто-нибудь сказать мне: 1. как добавить событие touch в SystemTray или 2. как получить обработчик элемента пользовательского интерфейса, который описан в xaml, в то время как у меня есть только обработчик типа PhoneApplicationPage этой страницы.
1 ответ
Вы можете использовать
1) подсказка для тоста, описанная здесь http://windowsphonegeek.com/articles/WP7-Toast-Prompt-in-depth
2) или тост оболочки, описанный здесь http://www.c-sharpcorner.com/UploadFile/ae35ca/working-with-toast-notification-in%C2%A0windows-phone-7/ зависимости от того, что соответствует вашим требованиям лучше всего.
3) Вы также можете создать пользовательский элемент управления, который вы можете поместить вверху на своей главной странице и соответствующим образом обработать его событие касания.