2012-08-13 106 views
0

如何在windows phone中创建可触摸的通知栏?如何在Windows Phone中创建可触摸的通知顶栏?

我是新来的C#和windows手机世界。所以可能我的问题有一个简单的 的方法来解决,但我谷歌很多,并没有工作出来。 这里是我的目的:我有一个定时器运行在我的应用程序,它要求一个 服务通知信息每隔一小时,并在 屏幕顶部显示“通知栏”。 很容易得到的信息,但是当我想向他们展示的页面,在这里 是我的问题:

我用系统盘来显示我的信息。 它的工作原理,但后来我发现没有触摸或点击事件进度 指示条。 我甚至在App.xaml.cs中添加了一个事件到Touch.FrameReported,但是当我触摸系统托盘区域时,仍然是 ,事件不会触发。

2. 后来我想用一个动态的方式来实现这一目标:一个文本块添加到 当前页面 我当前页面的处理程序,但情况下,我只知道现在的 页处理程序的类型PhoneApplicationPage,我无法得到我的Root UI元素 (我的所有页面都有一个名为“LayoutRoot”的根元素) 而当我尝试使用反射方法获取“LayoutRoot”属性时,返回值为null。

的代码看起来是这样的:

Type type = PhoneApplicationPageHandler.getType()< 
//I checked,the type is my page's type 
type.getProperty("LayoutRoot") or type.getField("LayoutRoot") 
//they all return null 

BTW:LayoutRoot是一个网格,它在我的网页.xmal文件中描述。

现在我的选择是让我的所有页面都继承一个defalut页面,在这个页面中,我会 实现一种方法来实现我的第二种方式来模拟一个“可触摸的顶部栏”。

但我认为这个编码是丑陋的。

那么,谁能告诉我: 1.how到触摸事件添加到SystemTray中 或 2.how得到它在XAML中描述的UI元素的处理程序,而我只有一个的PhoneApplicationPage类型处理器该页面。

+0

使用[吐司推送通知](http://msdn.microsoft.com/en-us/library/hh202967%28v=vs.92%29.aspx)可能会更好,而不是自己模拟它 – 2012-08-13 11:39:33

回答

0

您可以使用
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/描述提示符或shell敬酒。

3)您也可以创建一个自定义控件,您可以将它放在主页面的顶部并相应地处理其点击事件。

+0

谢谢,我用messageBox来完成。这很丑陋,现在我正在阅读你提到的文章。 – JackyRang 2012-08-15 06:17:44