DevExpress WinForm の次のメジャー バージョン (v23.1) は 6 月頃にリリースされる予定で、この記事では早期アクセス プレビュー (EAP) に含まれる新機能を紹介します。
PS: DevExpress WinForm には 180 以上のコンポーネントと UI ライブラリがあり、 Windows フォームプラットフォーム用の影響力のあるビジネス ソリューションを作成できます。DevExpress WinForm は、 Office スタイルのインターフェイスでも、大量のビジネス データの分析と処理でも、スムーズで美しく、使いやすいアプリケーションを完璧に構築できます。
DevExpress v22.2 正式バージョンのダウンロードを入手します(Q 技術情報: 523159565)
SVG スキンのシステム アクセント カラーとカスタム アクセント カラー
エンド ユーザーが Microsoft Windows OS でアクセント カラーを変更すると、DevExpress ベクター スキンで関連付けられた色を変更できるようになりました。WindowsFormsSettings.TrackWindowsAccentColor 設定をアクティブにしてこのオプションを有効にします。
using DevExpress.Utils;
using DevExpress.XtraEditors;
static void Main() {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
WindowsFormsSettings.TrackWindowsAccentColor = DefaultBoolean.True;
Application.Run(new Form1());
}
ユーザーはカスタムのアクセントカラーを指定して、希望の外観を動的に適用することもできます。
DevExpress.XtraEditors.WindowsFormsSettings.SetAccentColor(Color.FromArgb(16,124,65));
「ベジェ」スキンは 2 番目のアクセント カラーをサポートしています。2 番目のアクセント カラーを指定するには、WindowsFormsSettings.SetAccentColor2 メソッドを使用します。
WindowsFormsSettings.TrackWindowsAccentColor 設定は、ハイ コントラスト スキンでは機能しません。
Windows オペレーティング システムでのデフォルトのアプリケーション モードのサポート
この新機能を使用すると、ユーザーの Windows フォーム アプリケーションは、Microsoft Windows のデフォルトのアプリケーション モード設定に基づいて、明るいカラー パレットまたは暗いカラー パレットを自動的に適用できます (スキン ギャラリーには明るいカラー パレットまたは暗いカラー パレットのみが表示されます)。
この機能を有効にするには、WindowsFormsSettings.TrackWindowsAppMode プロパティを使用します。
using DevExpress.XtraEditors;
static void Main() {
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
WindowsFormsSettings.TrackWindowsAppMode = DevExpress.Utils.DefaultBoolean.True;
Application.Run(new Form1());
}
*WXI、Basic、および Bezier スキンで利用可能です。
WinForms ルックアップ エディターでの複数項目の選択
WinForms ルックアップ エディターは複数選択モードをサポートしています。find を使用すると、チェックボックス セレクター列が表示され、ユーザーは複数の項目を簡単に選択できるようになります。ユーザーは、選択したアイテムをルックアップで保存する方法 (オブジェクトのリストとして、または CSV 文字列として) を指定することもできます。
新しい API には次のものが含まれます。
- EditValueType - 複数選択モードを有効にし、選択した項目をルックアップで保存する方法を指定します。
- CheckBoxSelectorMember - 選択された項目ステータスを持つデータ ソース内のフィールドの名前を指定します。
- SelectionChanging - ユーザーがドロップダウン メニューで項目を選択する前に発生し、アクションをキャンセルできるようにします。
- SelectionChanged - ユーザーがドロップダウン メニューで項目を選択すると発生します。
WinForms リボン UI — Office 365 スタイル
WinForms リボン コントロールには、新しい Office 365 レンダリング スタイルが付属しています。
新しい Office 365 スタイルを使用すると、リボン コントロールのリボン フォームの上部に検索ボックスが表示され、リボン UI の右下にリボン オプションが表示されます。
using DevExpress.XtraBars.Ribbon;
ribbonControl.RibbonStyle = RibbonControlStyle.Office365;
次の API を使用して、他のリボン スタイルで新しい UI 拡張機能を有効にします。
- RibbonControl.OptionsExpandCollapseMenu - 「リボンの表示」の可用性とアクションの設定を取得します。
- RibbonControl.ExpandCollapseMenuShowing - 開発者が「リボンの表示」メニューをカスタマイズしたり、特定の条件に基づいてメニューが表示されないようにしたりできるようにします。
- ibbonControl.SearchItemPosition - 検索ボックスの位置を指定します。
リボンメッセージバーにリマインダーを表示する
Office にインスピレーションを得たポップアップ通知とアラートを表示するための新しい API が v23.1 に実装されました。
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";
}
新しい API には次のものが含まれます。
- ibbonControl.ShowMessage - メッセージ バーにメッセージを表示します。
- ibbonControl.CloseMessage - 指定されたメッセージを閉じます。
- RibbonControl.MessageClosed - メッセージが閉じられた後に発生し、ボタンのクリックを処理できるようにします。
- ibbonControl.Messages - メッセージ バーに表示されるメッセージのセットを取得します。