[英]Mute Windows 10 Notification using C# or WPF
我目前正在研究如何使 Windows 10 通知靜音,但我還沒有找到任何具體的解決方案。
我想要做的是在我按下按鈕或選中復選框時禁用所有通知。 它與您在通知設置上所做的類似,但我希望它在我的應用程序上以編程方式進行。
我目前正在閱讀微軟關於通知監聽器的文檔。 https://docs.microsoft.com/en-us/windows/uwp/design/shell/tiles-and-notifications/notification-listener
NotificationListener 允許您訪問通知,但不能訪問系統的配置。 而且你一定認為它是一個UWP Api......你想做一些在UWP Api(不可能)或WPF(可能,祝你好運)中無法完成的事情。
您無法更改 UWP 應用程序框內的系統設置 - 安全和事物 -。 這樣做的方法是“打開您希望用戶進行更改的配置應用程序”。
如果您不想在 WPF/.net 中使用此功能,則必須認真使用 PInvoke 和 WinApi。 這意味着考慮權限,以管理員身份運行,在 WinApi .h 文件中查找功能等...
保持簡單,在 UWP 中,不; 在 WPF 中,您必須閱讀大量 Windows .h 文件的源代碼/文檔,制作 C# 版本的結構等...
這里真正的問題是……有必要嗎? Windows 通過兩次單擊提供 Focus Assist(角落、Focus Assist)
我非常感謝您的反饋! 我做了一些修補並找到了負責通知的服務。 我不太相信這是最好的方法,但它對我有用。
我所做的是使用 C# 停止服務。 這是我的示例代碼:
ServiceController[] services = ServiceController.GetServices();
foreach (ServiceController service in services)
{
if (service.ServiceName.Contains(serviceName))
{
service.Start();
}
}
我不知道這是否是一個好習慣,所以我仍然願意接受反饋和建議。
謝謝!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.