整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          界面控件DevExpress WinForms HTML & CSS模板-輕松創建警報通知

          最新的DevExpress WinForm版本中,開發者可以使用WinForm產品線(通過DevExpress AlertControl和ToastNotificationManager)創建兩種類型的通知/警報,最近技術團隊還推薦使用DevExpress ToastNotificationManager來顯示原生 Windows 10+ 通知。

          DevExpress Universal Subscription官方最新版免費下載試用,歷史版本下載,在線文檔和幫助文件下載-慧都網

          盡管自定義選項有些有限(toast 僅提供九個布局模板),但ToastNotificationManager 代表了比傳統的基于面板的AlertControl更好、更現代的替代方案。

          在最新版中為AlertControl發布的HTML & CSS 模板,允許開發人員創建時尚的警告通知,同時可利用AlertControl 本身的簡單性。下圖說明了技術團隊提供的一些示例模板(查找您喜歡的模板并將其復制到項目中):

          大多數通知只是一個帶有幾個文本塊、圖像和按鈕的矩形,設計這樣簡單的對象對每個人來說都應該相對容易——無論您有 HTML 和 CSS 經驗,還是開始在WinForms 應用程序中利用其潛力。 例如以下模板創建一個帶有圖標、標題、描述和“確定”按鈕的通知。

          <div class="container">
          <div class="popup">
          <img src="${SvgImage}" class="image" />
          <div class="caption">Notification Title</div>
          <div class="text">This notification uses a web-inspired template.</div>
          <div id="okButton" class="ok-button">OK</div>
          </div>
          </div>

          請注意,在此示例標記中,通知標題和說明是靜態字符串。 如果您要為用戶顯示一條消息,此解決方案就可以正常工作。

          當然我們的數據綁定功能提供了更大的靈活性——您可以創建一個模板并將不同的數據對象傳遞給它。 因此,您可以為多個通知消息重用一個模板。

          如果您更喜歡此選項,請使用 ${Data_property_name} 占位符,如下所示:

          <div class="text">${Caption}</div>
          <div class="text">${Text}</div>

          “Caption”和“Text”是標準占位符,可以通過 AlertControl.Show 重載直接替換:

          alertControl1.Show(this, "Sample caption", "Sample notification text");

          您可以添加模板設計所需的任意數量的占位符,但請記住處理 AlertControl.BeforeFormShow 事件并將數據對象傳遞給 e.HtmlPopup.DataContext 屬性。 例如,下面的代碼使用 div 元素來顯示由五個占位符組合而成的字符串:兩個用于字符串值(FullName、Ticker),兩個用于數字(Percentage、Price),一個用于自定義 Direction 枚舉值。

          <div class="message-text">
          ${FullName} ({Ticker}) {Direction} {Percentage}%. The current price is ${Price}.
          </div>

          通知圖像也在運行時檢索,img 標簽使用占位符替代靜態 src 屬性值。

          <img src="${StockImage}" class="message-image" />

          此示例應用程序使用 StockInfo 類對象作為數據項。

          public class StockInfo {
          public StockInfo(string ticker, string fullName, Direction direction,
          double percentage, double price, SvgImage img) {
          Ticker = ticker;
          FullName = fullName;
          Direction = direction;
          Percentage = percentage;
          Price = price;
          StockImage = img;
          }
          
          public string Ticker { get; set; }
          public string FullName { get; set; }
          public Direction Direction { get; set; }
          public double Percentage { get; set; }
          public double Price { get; set; }
          public SvgImage StockImage { get; set; }
          }
          
          public enum Direction {
          [Description("rises")]
          Up,
          [Description("falls")]
          Down
          }

          當數據項的 "Price" 值在短時間內發生顯著變化時會觸發通知,相應的項目分配給 AlertControl.BeforeFormShow 事件處理程序中的 e.HtmlPopup.DataContext 屬性。

          void AlertControl1_BeforeFormShow(object sender, AlertFormEventArgs e) {
          // TODO: Retrieve a data item
          e.HtmlPopup.DataContext = myStockInfoInstance;
          }

          因此,通知會從指定為 DataContext 的數據項中檢索其 ${Field_Name} 占位符的數據。 請注意,邊條的顏色會根據 "Direction" 枚舉值而變化。

          DevExpress WinForm

          DevExpress WinForm擁有180+組件和UI庫,能為Windows Forms平臺創建具有影響力的業務解決方案。DevExpress WinForms能完美構建流暢、美觀且易于使用的應用程序,無論是Office風格的界面,還是分析處理大批量的業務數據,它都能輕松勝任!

          PNotify是一個原生JavaScript通知和確認/提示庫。PNotify可以根據Web Notifications規范提供桌面通知,并返回瀏覽器內通知。PNotify是目前筆者正在項目中使用的一個通知提示組件,功能非常豐富,可以讓你的Web項目通知和提示更加的優雅!



          Github

          https://github.com/sciactive/pnotify

          快速開始

          npm install --save pnotify
          # Material style:
          npm install --save material-design-icons
          # Animate module:
          npm install --save animate.css
          # NonBlock module:
          npm install --save nonblockjs
          

          PNotify模塊目錄如下:

          • src Svelte組件和未壓縮的Bright Theme CSS;
          • lib/es 未壓縮的ECMAScript模塊;
          • lib/umd 未壓縮的UMD模塊;
          • lib/iife 未壓縮的 IIFE scripts;
          • dist 壓縮過的 Bright Theme CSS;
          • dist/es 壓縮過的ECMAScript 模塊;
          • dist/umd 壓縮過的 UMD 模塊;
          • dist/iife 壓縮過的 IIFE scripts;

          豐富的特性

          • 豐富的UI和效果:
          • Material,Bootstrap 3/4,Font Awesome 4/5,或stand-alone theme, Bright Theme
          • 移動樣式和滑動支持。
          • 定時隱藏。
          • 使用Animate.css進行光滑的動畫。
          • 注意使用Animate.css的getter。
          • 高度可定制的UI。
          • 粘滯的通知。
          • 可選的關閉和按鈕。
          • 非阻塞性通知,以減少侵入性使用。
          • 通知類型:通知,信息,成功和錯誤。
          • 堆棧允許通知一起或獨立定位。
          • 控制堆棧方向并推到頂部或底部。
          • 模態通知。
          • 確認對話框,警報按鈕和提示。
          • RTL語言支持。
          • 功能豐富的API。
          • 基于Web Notifications標準的桌面通知。
          • 動態更新現有通知。
          • 將表單和其他HTML放在通知中。
          • 默認情況下,轉義文本以防止XSS攻擊。
          • 生命周期事件的回調。
          • 請注意重新顯示舊通知的歷史記錄。
          • 普遍兼容。
          • 適用于任何前端庫(React,Angular,Svelte,Vue,Ember等)。
          • 適用于打包工具(Webpack,Rollup等)。
          • 大多數功能都沒有依賴關系。

          效果預覽

          要想看真實效果的朋友可以直接看官方提供的demo,非常的豐富示例,絕對讓你有使用它的沖動,咱們通過截圖來看一下:








          具體的效果只有使用了之后才會體會到,絕對值得使用!

          如何使用?


          • 在React中使用
          import PNotify from 'pnotify/dist/es/PNotify';
          import PNotifyButtons from 'pnotify/dist/es/PNotifyButtons';
          PNotify.alert('Notice me, senpai!');
          

          • Angular
          import PNotify from 'pnotify/dist/es/PNotify';
          import PNotifyButtons from 'pnotify/dist/es/PNotifyButtons';
          //...
          export class WhateverComponent {
           constructor() {
           PNotifyButtons; // Initiate the module. Important!
           PNotify.alert('Notice me, senpai!');
           }
          }
          

          • 原生ES5
          <script type="text/javascript" src="node_modules/pnotify/dist/iife/PNotify.js"></script>
          <script type="text/javascript" src="node_modules/pnotify/dist/iife/PNotifyButtons.js"></script>
          <script type="text/javascript">
           PNotify.alert('Notice me, senpai!');
          </script>
          

          • 原生ES6
          import PNotify from 'node_modules/pnotify/dist/es/PNotify.js';
          import PNotifyButtons from 'node_modules/pnotify/dist/es/PNotifyButtons.js';
          PNotify.alert('Notice me, senpai!');
          

          • 默認主題
          <link href="node_modules/pnotify/dist/PNotifyBrightTheme.css" rel="stylesheet" type="text/css" />
          

          • Material

          Material 樣式模塊:

          import PNotifyStyleMaterial from 'pnotify/dist/es/PNotifyStyleMaterial.js';
          // or
          var PNotifyStyleMaterial = require('pnotify/dist/umd/PNotifyStyleMaterial.js');
          // Set default styling.
          PNotify.defaults.styling = 'material';
          // This icon setting requires the Material Icons font. (See below.)
          PNotify.defaults.icons = 'material';
          

          • Material Icons
          # The official Google package:
          npm install --save material-design-icons
          # OR, An unofficial package that only includes the font:
          npm install --save material-design-icon-fonts
          

          • Bootstrap作為默認樣式

          要將Bootstrap設置為默認樣式,請在導入PNotify后從下面包含相應的設置:

          PNotify.defaults.styling = 'bootstrap3'; // Bootstrap version 3
          PNotify.defaults.icons = 'bootstrap3'; // glyphicons
          // or
          PNotify.defaults.styling = 'bootstrap4'; // Bootstrap version 4
          

          • Font Awesome

          要將Font Awesome設置為默認圖標,請在導入PNotify后從下面包含相應的設置:

          PNotify.defaults.icons = 'fontawesome4'; // Font Awesome 4
          // or
          PNotify.defaults.icons = 'fontawesome5'; // Font Awesome 5
          

          創建通知提示

          // 手動設置類型
          PNotify.alert({
           text: "I'm an alert.",
           type: 'notice'
          });
          // 自動設置類型。
          PNotify.notice({
           text: "I'm a notice."
          });
          PNotify.info({
           text: "I'm an info message."
          });
          PNotify.success({
           text: "I'm a success message."
          });
          PNotify.error({
           text: "I'm an error message."
          });
          

          總結

          以上只是簡單的介紹,如果你想讓你的瀏覽器推送通知不是很簡陋,筆者認為是時候使用這樣一個插件來助你解決這個問題了:



          PNotify是筆者用過的最優雅的提示通知組件,推薦給需要的人!

          evExpress WinForms擁有180+組件和UI庫,能為Windows Forms平臺創建具有影響力的業務解決方案。DevExpress WinForms能完美構建流暢、美觀且易于使用的應用程序,無論是Office風格的界面,還是分析處理大批量的業務數據,它都能輕松勝任!

          DevExpress WinForm 控件已正式發布v23.1版本,此版本全新升級HTML & CSS的可重用模板、增強Ribbon組件功能、新增Office 365樣式等,歡迎下載最新版體驗!

          DevExpress WinForms Subscription官方最新版免費下載試用,歷史版本下載,在線文檔和幫助文件下載-慧都網

          支持HTML & CSS

          可重用的HTML & CSS模板

          DevExpress WinForms HTML & CSS模板庫包括一組預先設計的模板,這些模板基于官方WinForms演示應用程序中使用的模板。您可以“按原樣”使用這些模板,也可以根據需要進行定制。當然您也可以創建一個HTML & CSS模板,將模板保存到庫中,并在需要時在任何項目中使用它。

          將圖像標簽綁定到具有圖像名稱的數據字段

          現在可以將圖像標簽綁定到具有圖像名稱的數據源字段中,HTML模板檢查數據字段是否包含SVG或位圖。如果沒有,則模板在SvgImageCollection(分配給控件的htmlages屬性)中查找具有指定名稱的圖像。

          HTML

          <img class="icon" src="${IconName}"/>

          Ribbon

          全新的Office 365樣式

          DevExpress WinForms Ribbon控件附帶了一個全新的Office 365渲染樣式。

          當我們使用新的Office 365樣式時,WinForm Ribbon控件在功能區表單的頂部顯示一個搜索框,并在 Ribbon UI的右下方顯示顯示功能區選項。

          使用以下API在其他 Ribbon樣式中啟用新的UI增強功能:

          • RibbonControl.OptionsExpandCollapseMenu - 獲取"Show Ribbon"彈出菜單的可用性和操作設置。
          • RibbonControl.ExpandCollapseMenuShowing - 允許您自定義"Show Ribbon"菜單或阻止它們被顯示(基于特定條件)。
          • RibbonControl.SearchItemPosition - 指定“搜索”框的位置。

          后臺視圖 - 對齊項目的頂部和底部

          Backstage View(后臺視圖)項目現在包括一個新的對齊選項,此選項允許您將項目對齊到后臺視圖的頂部和底部,以及標題欄和快速訪問工具欄的左側和右側(當它顯示在Ribbon控件下方時)。

          C#

          backstageViewItem.Alignment = BackstageViewItemAlignment.Bottom;

          在Ribbon消息欄中顯示提醒

          新版本中實現了新的API來顯示受Office啟發的彈出式通知和警報。

          新的API包括:

          • RibbonControl.ShowMessage - 在消息欄中顯示消息。
          • RibbonControl.CloseMessage - 關閉指定的消息。
          • RibbonControl.MessageClosed - 在消息關閉后發生,并允許您處理按鈕單擊。
          • RibbonControl.Messages - 獲取消息欄中顯示的消息集合。

          C#

          using DevExpress.XtraBars.Ribbon;
          
          void ShowMessage() {
          RibbonMessageArgs args = new RibbonMessageArgs();
          args.Caption = "What's New";
          args.Text = "Explore new WinForms-related features we expect to introduce in our first major update this year (v23.1).";
          args.Icon = MessageBoxIcon.Information;
          args.Buttons = new DialogResult[] { DialogResult.OK };
          args.Showing += Args_Showing;
          Ribbon.ShowMessage(args);
          Ribbon.MessageClosed += Ribbon_MessageClosed;
          }
          void Ribbon_MessageClosed(object sender, RibbonMessageClosedArgs e) {
          if(e.Result == DialogResult.OK)
          Data.Utils.SafeProcess.Start("https://community.devexpress.com/blogs/winforms/archive/2023/02/16/devexpress-winforms-roadmap-23-1.aspx");
          }
          void Args_Showing(object sender, RibbonMessageShowingArgs e) {
          e.Buttons[DialogResult.OK].Caption = "Explore Roadmap";
          }

          Page header項目 - 在矢量皮膚中著色

          Page header項(BarButtonItem和BarCheckitem)可以根據矢量皮膚中的背景顏色調整文本和SVG圖標的顏色,背景色必須設置為皮膚顏色(在設計時,切換到“DX Skins”選項卡來選擇皮膚顏色)。


          更多DevExpress線上公開課、中文教程資訊請上中文網獲取


          主站蜘蛛池模板: 中文字幕VA一区二区三区| 亚洲午夜日韩高清一区| V一区无码内射国产| 久久99国产精品一区二区| 亚洲色精品vr一区二区三区| 亚洲成AV人片一区二区密柚| 久久精品成人一区二区三区| 人妻少妇AV无码一区二区| 99久久精品日本一区二区免费| 精品国产一区二区二三区在线观看| 亚洲AV日韩精品一区二区三区| 色窝窝无码一区二区三区 | 竹菊影视欧美日韩一区二区三区四区五区 | 国产一区美女视频| 怡红院美国分院一区二区| 中文字幕AV一区中文字幕天堂| 成人久久精品一区二区三区| 久久精品一区二区三区不卡| 亚洲乱色熟女一区二区三区蜜臀| 国产99精品一区二区三区免费 | 国产精品一区不卡| 精品深夜AV无码一区二区老年| 亚洲av无码一区二区乱子伦as| 国产精品一区二区av不卡| 国产一区二区三区视频在线观看| 亚洲一区二区观看播放| 性无码一区二区三区在线观看| 一区二区三区四区在线播放| 日本精品一区二区三区视频| 色屁屁一区二区三区视频国产| 日韩一区二区在线播放| 亚拍精品一区二区三区| 久久国产精品视频一区| 日韩精品视频一区二区三区 | 一区视频在线播放| 国产伦精品一区二区三区视频金莲| 国产精品美女一区二区| 国产激情一区二区三区 | 国产午夜精品免费一区二区三区| 中文字幕Av一区乱码| 少妇精品无码一区二区三区|