SPREAD for Windows Formsのリボンコントロールの使い方(1)

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)を使用することが可能です。

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コントロール

最後にリボンコントロールとSPREADコントロールを関連付けします。リボンコントロールのスマートタグから「AttachTo」項目で配置したSPREADコントロールのオブジェクトである「fpSpread1」を選択します。

SPREADコントロール

リボンコントロールと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にすることで有効になります。

EnhancedShapeEngineプロパティ

Excelライクなアプリケーションの完成!

今回Visual Studioを使用して行った操作は以下の4点のみですが、それでもExcelライクなアプリケーションが完成しています。

  1. リボンコントロールの配置
  2. SPREADコントロールの配置
  3. リボンコントロールとSPREADコントロールの関連付け
  4. 拡張シェイプエンジンを有効

最後に作成したアプリケーションで、SPREADコントロールのセルに値をペーストしてリボンコントロールからテーブルスタイルやチャートの挿入を行ってみます。

さいごに

Webサイトでは製品の機能を手軽に体験できるデモアプリケーションやトライアル版も公開しておりますので、こちらもご確認ください。

また、ご導入前の製品に関するご相談、ご導入後の各種サービスに関するご質問など、お気軽にお問合せください。

\  この記事をシェアする  /