在C#/UWP中发生特定事件时,强制窗口闪烁
我正在使用C#/UWP制作一个应用程序。在该应用程序中,如果发生特定事件,我希望使窗口闪烁,以便该应用程序的用户知道发生了什么。如何在我的C#UWP应用程序中获得此信息在C#/UWP中发生特定事件时,强制窗口闪烁,c#,uwp,C#,Uwp,我正在使用C#/UWP制作一个应用程序。在该应用程序中,如果发生特定事件,我希望使窗口闪烁,以便该应用程序的用户知道发生了什么。如何在我的C#UWP应用程序中获得此信息 就像在Yahoo Messenger中一样,如果你收到一条消息,那么消息窗口会闪烁以获得你的关注,我想在我的应用程序中使用这种效果。我理解你的意思。但是UWP应用程序不同于Win32应用程序,您无法控制窗口的焦点 我的意思是,如果当前应用程序没有获得焦点(例如最小化),那么当前ApplicationView上的操作无效 但与窗口
就像在Yahoo Messenger中一样,如果你收到一条消息,那么消息窗口会闪烁以获得你的关注,我想在我的应用程序中使用这种效果。我理解你的意思。但是UWP应用程序不同于Win32应用程序,您无法控制
窗口的焦点
我的意思是,如果当前应用程序没有获得焦点(例如最小化),那么当前ApplicationView
上的操作无效
但与窗口闪烁相比,UWP的信息应用程序具有更好的提示方式,如ToastNotification
,这是推荐的做法
如果您想了解更多关于ToastNotification的信息,可以参考以下内容
致以最诚挚的问候。目前,似乎没有api可以在任务栏中闪烁应用程序的图标。如果你想获得一些引人注目的效果,你可以使用通知或使通知徽章出现在你的应用程序的任务栏图标上,但这是一种没有动画的静态效果。有关更多详细信息,请参阅本文档
为什么不能改为尝试通知呢!
private void updateBadgeGlyph()
{
string badgeGlyphValue = "attention";
XmlDocument badgeXml =
BadgeUpdateManager.GetTemplateContent(BadgeTemplateType.BadgeGlyph);
Windows.Data.Xml.Dom.XmlElement badgeElement =
badgeXml.SelectSingleNode("/badge") as Windows.Data.Xml.Dom.XmlElement;
badgeElement.SetAttribute("value", badgeGlyphValue);
BadgeNotification badge = new BadgeNotification(badgeXml);
BadgeUpdater badgeUpdater =
BadgeUpdateManager.CreateBadgeUpdaterForApplication();
badgeUpdater.Update(badge);
}