Windows Forms用のスプレッドシートコンポーネント「SPREAD for Windows Forms(スプレッド)」では、旧バージョンから最新バージョンに移行するためのツールを提供しています。また、NuGetパッケージを使用することで .NET Frameworkから .NETへの移行も容易に行えます。
本記事では、Windows Formsアプリケーションで使用している旧バージョンのSPREADを最新バージョン「17.0J」に移行し、さらにWindows Formsアプリケーションのフレームワークを .NET 8に移行する方法を紹介します。
目次
17.0Jの新機能
17.0Jでは「.NET 8」への対応を実施しているほか、新しいコントロールとなるリボンコントロールを追加しました。リボンコントロールはWindows FormsアプリケーションにExcelのリボンと同等のメニューを簡単に組み込むことができます。さらに独自のタブ、グループおよびアイテムをリボンコントロールに追加できますのでカスタマイズ性にも優れています。
また、SPREADコントロールではチャートシート、複数レベルの項目軸ラベルといった「チャート機能」に加えて、様々な貼り付けオプション、複数範囲のコピー&ペーストといった「コピー&ペースト機能」が強化されており、既存の業務アプリケーションにExcelライクな機能や操作性を素早く追加することが可能です。詳細については新機能ページをご確認ください。
17.0Jへの移行方法
移行対象のアプリケーション
今回は2018年に発売された「11.0J」に含まれている「基本機能デモ」(Samples\CS\SpreadWinDemoCS)を「17.0J」に移行します。
移行ツールを実行
まずは移行ツールを起動します。移行ツールはWindowsのスタートメニューやアプリビューから[MESCIUS SPREAD for Windows Forms 17.0J]-[移行ツール]、またはエクスプローラーから<製品インストールフォルダ>にあるMigrationTool.exeから起動します。
※ 移行ツールを実行する前に移行元のプロジェクト全体のバックアップを取ることをおすすめします。
「移行の対象」にある「指定したプロジェクトを移行する」を選択し[…]ボタンで「基本機能デモ」を選択します。「移行先のバージョンを指定する」ではインストールしているSPREADのバージョンがデフォルトで選択されるので正しいバージョン(17.0J)になっていることを確認します。
また、「デザイン時にSPREADスキンを設定していないフォーム」としていくつかの項目が表示されています。これは移行元のプロジェクトでSPREADスキンを明示的に設定していないために、17.0Jに移行した時にSPREADコントロールのスタイルが17.0Jのスタイルに変わることを意味しています。
今回は17.0Jのスタイルを有効にしますので、「8.0J/10.0J/11.0Jのデフォルトのスタイルを維持する」オプションはチェックせずに[実行]ボタンをクリックして移行を実行します。
アプリケーションを起動
移行ツールの実行が完了したらプロジェクトをVisual Studioで開きます。11.0Jのプロジェクトでは「.NET Framework 4.5.2」が使用されていますので以下のダイアログが表示されます。ここでは「対象を.NET Framework 4.8に更新する」を選択します。
VIsual Studioのメニューから[プロジェクト]-[SpreadWinDemoのプロパティ]を選択し、「対象のフレームワーク」を「.NET Framework 4.8」から「.NET Framework 4.8.1」に変更します。
プロジェクトをリビルドしてアプリケーションを実行します。基本機能デモが正しく表示されますが、行列のヘッダが11.0Jの白をベースにしたスタイルから17.0JのExcelライクな灰色のスタイルに変化しています。
これで11.0Jから17.0Jへの移行は完了です。
.NET 8への移行方法
.NET アップグレード アシスタントを実行
.NET 8への移行でも同じように「11.0J」に含まれている基本機能デモ(Samples\CS\SpreadWinDemoCS)を使用します。.NET 8ではNuGetパッケージを使用して17.0Jをインストールしますので移行ツールは不要です。
プロジェクトをVisual Studioで開き「ソリューション エクスプローラー」からプロジェクトを右クリックして「アップグレード」を選択します。
※ .NET アップグレード アシスタントをインストールしていない場合には、ここでインストールを行います。
アップグレードアシスタントが起動するので「プロジェクトを新しい.NET バージョンにアップグレードする」の「所定の位置のプロジェクトのアップグレード」を選択します。
次に「ターゲットフレームワーク」で「.NET 8.0」を選択します。
「コンポーネントの選択」ではすべての項目がチェックされた状態になっていますのでそのまま「アップグレードを選択」をクリックします。
アップグレードが実行されました。
NuGetパッケージをインストール
次にNuGetパッケージで17.0Jをインストールします。Visual Studioの[ツール]-[NuGetパッケージマネージャー]-[ソリューションのNuGetパッケージの管理]を選択します。
「参照」タブで「GrapeCity.Spread.WinForms.ja」を入力して検索します。表示された「GrapeCity.Spread.WinForms.ja」を選択してから右パネルの「プロジェクト」で「SpreadWinDemo」選択し[インストール]をクリックします。
「ライセンスへの同意」画面が表示されますので[同意する]をクリックしてインストールします。
アプリケーションを起動
プロジェクトをビルドします。多数の警告が表示されますがビルドは正常に終了します。
アプリケーションを実行します。フォームのサイズが小さくなっており、ヘッダ部分やフッタ部分が正しく表示されていない部分がありますが、SPREADのコントロールは17.0Jのスタイルが有効になっており正しく移行できていることが確認できます。
より詳細な移行情報はWebサイトで公開しています
以上が旧バージョンのSPREADを使用しているWindows Formsアプリケーションを「17.0J」に移行する方法でした。Webサイトでは移行作業の実例を詳細にまとめた移行資料や、移行に関する情報をまとめたページを公開しています。17.0Jへの移行をご検討されている方は是非ご確認ください。
Webサイトではトライアル版も公開していますので、こちらもご確認ください。
また、ご導入前の製品に関するご相談、ご導入後の各種サービスに関するご質問など、お気軽にお問合せください。個別相談会では技術や製品、移行に関する課題の解決方法のご相談もできますので是非ご活用ください。