DevExpress Winforms使用技巧教程:如何在WinForms Apps中顯示Toast Notifications(一)
下載DevExpress v19.2完整版 DevExpress v19.2漢化資源獲取
DevExpress Winforms Controls 內(nèi)置140多個UI控件和庫,完美構(gòu)建流暢、美觀且易于使用的應(yīng)用程序。使用WinForms PictureEdit控件,可以在表單上顯示圖像。為控件實現(xiàn)DirectX渲染支持,可以輕松處理大的高DPI圖像。想要體驗?點擊下載>>
Toast Notifications(或簡稱Toasts)是最初在Microsoft Windows 8中引入的平面通知,它們會彈出在屏幕的右下角,可以通過Windows操作中心進行訪問。您可以使用DevExpress ToastNotificationManager組件將這些通知合并到下一個Windows Forms應(yīng)用程序中。
WinForms Toast Notification Manager提供九種通知模板/樣式——包括Windows 10通用模板,該模板使您可以合并用戶交互控件,例如按鈕或編輯器。
應(yīng)用程序快捷方式
DevExpress WinForms Toast Notification Manager生成正版Windows Toast,這些toasts就像系統(tǒng)通知一樣:
- 即使已關(guān)閉關(guān)聯(lián)的應(yīng)用程序,也會出現(xiàn)Toasts。
- Toasts可以從操作中心訪問。
- Toasts使用與操作系統(tǒng)相同的配色方案。
為了提供此功能,必須使用本地Windows API并遵循所有Microsoft準(zhǔn)則和要求,這包括Microsoft的應(yīng)用程序快捷方式要求。
在過去,微軟對應(yīng)用程序快捷方式的要求有爭議,技術(shù)團隊最近在設(shè)計時進行了較小的改進,并在組件的文檔頁面中添加新的部分,以幫助解決此問題。
Microsoft在其Toast Notifications Overview中明確聲明,如果應(yīng)用程序在Windows Start屏幕中沒有快捷方式方式,則它將無法顯示Toast。
由于Start屏幕快捷方式存儲在 %AppData%\Microsoft\Windows\Start Menu\Programs 文件夾中,因此需要遵循一個簡單的規(guī)則:如果要顯示toast,請將應(yīng)用程序快捷方式添加到Start Menu文件夾中。
組件在其智能標(biāo)記菜單中包含"Create Application Shortcut"連接,單擊此鏈接后,您的應(yīng)用將正確顯示通知。
"Create Application Shortcut"命令將快捷方式添加到個人的Start屏幕,換句話說,創(chuàng)建應(yīng)用程序快捷方式的PC是唯一可以顯示toast的機器,其他任何計算機的Start屏幕都沒有指向應(yīng)用程序的快捷方式。如果要顯示所有用戶的toast,請記住您的應(yīng)用程序安裝程序配置在%AppData%\Microsoft\Windows\Start Menu\Programs文件夾中添加快捷方式(具有有效的AppUserModelID)。
最好的選擇是使用安裝程序?qū)⒋丝旖莘绞教砑拥接脩粲嬎銠C,如果這不是一個選擇或您沒有安裝程序,則可以使用DevExpress.Data.ShellHelper.TryCreateShortcut方法添加適當(dāng)?shù)目旖莘绞健?
using DevExpress.XtraBars.ToastNotifications; using DevExpress.Data; //if there's no app shortcut in the start screen, add it if (!ShellHelper.IsApplicationShortcutExist("My Test App")) { ShellHelper.TryCreateShortcut( applicationId: manager.ApplicationId, name: "My Test App"); //restart the app Application.Restart(); }
請注意,TryCreateShortcut方法的可靠性不如其他方法可靠。首先,您的應(yīng)用可能沒有必要的權(quán)限將文件寫入系統(tǒng)文件夾。其次,請注意上面代碼片段中Application.Restart方法的使用。 如果應(yīng)用程序已經(jīng)在運行,則將其快捷方式添加到Start屏幕將不會啟用Toast,需要重新啟動應(yīng)用程序。
DevExpress v19.2線上公開課即將開課,前10名免費參與哦~
DevExpress技術(shù)交流群:540330292 歡迎一起進群討論
掃描關(guān)注DevExpress中文網(wǎng)微信公眾號,及時獲取最新動態(tài)及最新資訊