如果我有一个在后台运行的程序,当它弹出时需要用户看到它(如对话框),我是否可以让用户退出Metro模式(在Windows 8中)以便他能够看到这个通知?
答案 0 :(得分:2)
我非常怀疑它,这样的功能会产生一堆应用程序,这些应用程序本质上会试图接管并且对用户非常不和谐。您的桌面应用程序可能会生成一个Toast通知,提醒用户有一些操作需要采取行动,有关详细信息,请参阅this MSDN topic。
答案 1 :(得分:0)
我同意Jim的观点:将桌面自动从桌面切换到Metro(或者他们现在称之为的任何东西)都会在视觉上产生混乱和用户敌意。我意识到操作系统本身就是这样做的,就像从“开始”屏幕启动桌面应用程序一样。这并不能使它成为好的设计。
此外,当它这样做时,用户(可能)想要与新启动的应用程序进行交互。当您只是显示通知时,情况不一定如此。甚至可能不需要采取行动。
相反,我建议您使用Toast,即为此目的明确设计的通知框架。有一个示例应用程序可供下载:Sending toast notifications from desktop apps。
但请注意,要使Toast通知在桌面应用程序中运行,您必须在“开始”屏幕中使用System.AppUserModel.ID
安装桌面应用程序的快捷方式。这应由安装人员处理。更多信息是here。
当然,用户可以通过关闭通知或从“开始”屏幕删除应用的快捷方式来禁用此功能。这是完全可以的 - 如果他们采取这些行动中的任何一个,您可以假设他们不再希望从您的应用程序接收通知。