Windowsデスクトップアプリ開発にWPF

Windows デスクトップアプリケーション開発には、Windowsフォームのほか、WPF(Windows Presentation Foundation)プラットフォームの採用という選択肢があります。

WPFにはXAML(eXtensible Application Markup Language:ザムル)言語や、データバインディングといった、Windowsフォームには存在しない概念や、従来とは異なるグラフィック描画方式を採用しています。

このWPFの特性を理解し活用することで、Windowsフォームを超える開発生産性の高さで、柔軟な画面レイアウトが実現するアプリケーションが開発できます。

Windowsデスクトップアプリ開発にWPF

柔軟なUIカスタマイズ

WPFは既定のテンプレートを編集したり独自のテンプレートを新たに定義したりすることで、コントロールの外観を自由に変えたり、複数のUI要素を統合したりと、Windowsフォームとは一線を画すUIカスタマイズの柔軟性を持ちます。

外観を定義するテンプレートやスタイルはXAMLにより定義し、複数のUI要素で共有できるほか、異なるアプリケーションでも流用できるため、開発工数の削減にも寄与します。

レポートビューワの外観をカスタマイズ

ActiveReportsのWPF用レポートビューワは、不要なボタンの削除やカスタムボタンの追加など、要件にあわせたカスタマイズが簡単にできます。

Material Design In XAML ToolkitなどのデザインUIライブラリを使用すれば、外観をモダンにカスタマイズすることも可能です。

詳しく見る

入力用途に応じてテンプレートを変更

InputManが提供するコンボコントロールは、テンプレートを使用してテキストエリアをカスタマイズできます。

InputManのテキストコントロールやマスクコントロールと組み合わせて、未入力時の透かし文字の表示や、入力可能な文字種の限定、定型書式などを設定できます。

カレンダーの祝日や曜日の外観もスタイルを使用して定義するため、異なるアプリケーションでの再利用が可能です。

再利用性に優れたMVVM設計

ソフトウェアアーキテクチャパターンであるMVVM(Model-View-ViewModel 、モデル・ビュー・ビューモデル)は、ビジネスロジックとUIを分離して開発できることから、開発生産性や再利用性の高さが評価され採用されています。

UWP(Universal Windows Platform:ユニバーサル ウィンドウズ プラットフォーム)やXamarinもMVVM設計が可能で、また開発にはXAMLを使用するため、WPFでの資産を再利用でき、アプリケーション開発における保守性・開発生産性に寄与します。

セルへのデータバインディングに対応

SPREADはSPREADコントロールだけでなく、セルに対してもデータバインディングが可能です。

コードビハインドに出来るだけ処理を記述せず、ビューとビューモデルを疎結合にすることで、アプリケーションの保守性を高める効果が期待できます。

詳しく見る

多種多様なUIを実現

ComponentOneは、業務アプリケーションに必要な機能を満たすコンポーネントのセットです。多種多様なUIコントロールは、Windowsフォームのほか、WPF、UWP、Xamarinなど .NET Frameworkの各種プラットフォームに対応しています。

WPF用にチャートやゲージといったデータ視覚化、PDFやMS Wordのファイル出力、コントロールの外観を簡単に設定するClearStyleなど、標準コントロールにない数々の機能を提供します。
MVVMパターンではView部分にUIコンポーネントを採用することで、統一したデザインで設計することができます。

関連技術情報

SPREAD for WPFでMVVMパターンのアプリケーションを作成する

CodeZineに掲載された記事です。
MVVMパターンを使用したアプリケーションを作成する方法を紹介しています。

詳しく見る
実践WPF業務アプリケーションのアーキテクチャ

CodeZineに掲載された記事です。
現役エンジニアがMVVMを採用した開発について解説しています。

詳しく見る
Excelと同様の操作性はWPFアプリでも求められる

利用者からの要望で実装したSPREAD for WPFの機能を解説しています。

詳しく見る
「GrapeCity ECHO 2017」レポート

XAMLをテーマに開催した技術カンファレンスの開催レポートです。資料も公開しています。

詳しく見る
WPF関連の技術記事

GrapeCity.devlogで公開している「WPF」カテゴリーの技術記事一覧です。

詳しく見る

導入事例・パートナー

ヤフー株式会社

200万行でも高速に表示!パフォーマンスにこだわり続けた広告入稿管理システム

導入事例を見る

株式会社マーベリック

XAML関連開発も経験豊富な導入支援パートナー企業。「IT×デザイン」をコンセプトに、エンドユーザーが本当に喜ぶアプリケーションの提供を目指しています。

詳しく見る

この記事で解説したWPF用コンポーネント

SPREAD

[スプレッド]
Excelのような見た目と操作性に加え
自由レイアウトにも対応したグリッドコンポーネント

デモを試す
製品情報

ActiveReports

[アクティブレポート]
日本の帳票開発に必要なすべての機能を
搭載したコンポーネント

デモを試す
製品情報

InputMan

[インプットマン]
入力操作を楽にする機能を多数搭載した
入力用コントロールセット

デモを試す
製品情報

ComponentOne

[コンポーネントワン]
UIコントロールセット
多様な環境でアプリ開発を支援

デモを試す
製品情報