Windows Forms用スプレッドシートコンポーネント「SPREAD for Windows Forms(スプレッド)」の新バージョン「17.0J」では、新たに「リボンコントロール」が追加されています。
そこで今回は、「.NET 8」環境でリボンコントロールを使用してExcelライクなアプリケーションを作成してみたいと思います。SPREADコントロールとリボンコントロールを組み合わせて使用することで、機能豊富なExcelのようなユーザーインターフェイスを簡単に作成することができます。
目次
開発環境
使用する開発環境は以下です。.NET 6/8に対応しているVisual Studio 2022を使用します。SPREADの .NET 6/8対応モジュールはNuGetパッケージで提供されており、NuGetのサイトまたはインストーラによってインストールされるパッケージ(*.nupkg)を使用することが可能です。
- Visual Studio 2022(バージョン17.10.3)
- GrapeCity.Spread.WinForms.ja(バージョン17.0.1)
SPREAD for Windows Forms 17.0Jを使用するには、製品版またはトライアル版をインストールして製品の認証を行う必要があります。トライアル版は以下からダウンロード可能です。
Visual Studio 2022でのプロジェクトの作成方法や、NuGetパッケージのインストール方法は以下の記事を参考にしてください。
コントロールの配置
NuGetパッケージのインストールが完了すると、ツールボックスには「Spread for Windows Forms」のタブが表示され次のような項目が追加されています。
この中から今回は以下の2つのコントロールを使用します。
コントロール名 | ツールボックス内の記述 |
---|---|
SPREADコントロール | FpSpread(FarPoint.Win.Spread) |
リボンコントロール | RibbonBar(GrapeCity.Spreadsheet.WinForms.Ribbon) |
リボンコントロール
リボンコントロールをドラッグ&ドロップしてフォームに追加します。コントロールを配置すると親フォームにドッキングされます。リボンコントロールのDock
プロパティはTop
になりExcelのようにフォームの上部全体を占有する使い方が想定されています。
SPREADコントロール
次にSPREADコントロールをドラッグ&ドロップしてフォームに追加します。SPREADコントロールはリボンコントロールとは異なり親フォームにはドッキングされません。そのため追加したコントロールのスマートタグから手動で「親コンテナにドッキングする」を選択してフォームにドッキングします。
最後にリボンコントロールとSPREADコントロールを関連付けします。リボンコントロールのスマートタグから「AttachTo」項目で配置したSPREADコントロールのオブジェクトである「fpSpread1」を選択します。
リボンコントロールとSPREADコントロールの関連付けは実行時に行うことも可能です。次のサンプルコードではフォームのLoad
イベントで関連付けを行っています。
private void Form1_Load(object sender, EventArgs e)
{
// リボンコントロールとSPREADコントロールの関連付け
ribbonBar1.Attach(fpSpread1);
}
リボンコントロールの各機能
リボンコントロールにはExcelに備えられているものと同じようなリボンメニューが搭載されています。そのためExcelのリボンと同等のメニューや、一部のメニューを簡単にアプリケーションに組み込むことが可能です。
新旧スタイルシステムの表示の違い
SPREAD for Windows Formsには、新しいスタイルシステム(LegacyBehaviors.Style
がオフ)と旧スタイルシステム(LegacyBehaviors.Style
がオン)が用意されており、提供されている機能が異なります。新旧スタイルシステムの使い分けや使用可能な機能は製品ヘルプに記載されています。
リボンコントロールを使用する場合にも新旧スタイルシステムによってデフォルトで表示されるメニュー項目が異なってきます。旧スタイルシステムが使用されている場合には新しいスタイルシステムにあるメニュー項目の一部(例:スタイル、数値書式)が非表示になります。
新旧スタイルシステムの切り替えはVisual Studioのデザイン画面からLegacyBehaviors
プロパティでStyle
を追加/削除することで行えます。今回は新しいスタイルシステムを有効にした状態でリボンコントロールを使用します。
拡張シェイプエンジンを有効にする
次に拡張シェイプエンジンを有効にします。拡張シェイプエンジンは従来のシェイプ機能と比べて多くのシェイプを扱うことが出来ます。またExcelと互換性のあるコメントを使用することも可能です。
拡張シェイプエンジンはIFeatures
インタフェースのEnhancedShapeEngine
プロパティをTrue
にすることで有効になります。
Excelライクなアプリケーションの完成!
今回Visual Studioを使用して行った操作は以下の4点のみですが、それでもExcelライクなアプリケーションが完成しています。
- リボンコントロールの配置
- SPREADコントロールの配置
- リボンコントロールとSPREADコントロールの関連付け
- 拡張シェイプエンジンを有効
最後に作成したアプリケーションで、SPREADコントロールのセルに値をペーストしてリボンコントロールからテーブルスタイルやチャートの挿入を行ってみます。
さいごに
Webサイトでは製品の機能を手軽に体験できるデモアプリケーションやトライアル版も公開しておりますので、こちらもご確認ください。
また、ご導入前の製品に関するご相談、ご導入後の各種サービスに関するご質問など、お気軽にお問合せください。