Daizen Ikehara

インフラジスティックス・ジャパン株式会社の元デベロッパー エバンジェリスト、現製品担当の Blog
xamDataGrid vs xamGrid: どちらのグリッドを使用すべきか

このエントリは、Infragistics Ultimate UI for WPF プロダクトオーナーである、Brian Lagunas の記事をもとに作成しています。原文は、Brian がプロダクトオーナーという立場からどちらのグリッドを使用すべきか、今後どうなっていくのか。という点を説明しています。これまで弊社 WPF 製品をご利用いただいている場合、あるいは、これから WPF アプリケーションを開発する予定があり、弊社コントロールにご興味がある場合、ぜひ、ご一読ください。

Brian Lagunas – XamDataGrid vs XamGrid: Which WPF Grid Should I Choose?

Infragistics Ultimate UI for WPF を利用する場合、xamDataGrid と xamGrid のどちらを利用するべきか。これまで明確な答えがなく、よくご質問いただきます。そのため、まず弊社としての回答をお伝えします。

xamDataGrid をご利用ください

ここからは、xamGrid について、これまでの背景や今回の表明に至った理由、今後の計画についてお伝えします。

xamGrid が登場した背景と現状

xamGrid は、WPF と Silverlight 双方で利用できるクロスプラットフォーム グリッドが必要であるという経緯のもと、それぞれの製品に収録されました。当時、既に xamDataGrid は WPF 対応製品に収録されていましたが、WPF のみに存在する API を最大限活用し、パフォーマンスの向上を図っていたため、Silverlight への移植を行うことができませんでした。そのため、クロスプラットフォーム グリッドとして xamGrid がそれぞれの対応製品に収録されるという形になりました。

また、この xamGrid と結びつきが強いエディター コントロールも併せて追加されました。

  • xamComboEditor (間違えやすいですが、こちらも同系列のコントロールです)
  • xamCurrencyInput
  • xamDateTimeInput
  • xamMaskedInput
  • xamNumericInput

Silvelright が隆盛であった時代は、Silverlight と WPF で開発を行う予定があるのであれば xamGrid を、WPF のみであれば xamDataGrid を使用する判断が適していたと考えることもできます。しかし、当時、我々からお客様に対して、どの場合においてどちらを使用すべきという明確なガイダンスがなかったため、今日に至るまでグリッドの選択に関して混乱を招く状態となってしまいました。

この結果、現在 Infragistics Ultimate UI for WPF は ふたつのグリッド、ふたつの date/time エディター、ふたつの マスク エディターなどが存在する状態となってしまい、グリッド以外のコントロールの選択にも混乱を招いてしまう結果となりました。

現在、Silverlight の新規開発を行いたいというお問い合わせは、はほぼないといえる状況です。そのため、非常に特別な理由がない限り、xamGrid と上記 input を継続して使用する必要がないと言えます。

それぞれのグリッドの機能差異について

xamGrid で提供している機能の 約 90% は xamDataGrid にも存在します。ただし、xamGrid でのみ提供されているいくつかの主要機能が存在します。

  • セル結合(垂直、縦方向)
  • 条件フォーマット
  • ページング

弊社は、この機能際について現在、差を埋めるための機能拡張を予定しています。

セル結合については、現在、2018 Vol.1 での提供に向けて開発を進めており、条件フォーマットについては 2018 Vol.2 での提供を計画しています。最後のページングについては、xamDataGrid で提供されている、非同期ページング データ ソースの仕組みを利用することで、全レコードの一部分のみをロードし、パフォーマンスを向上できるようになったため、必要ではないと判断しています。

もし、WPF のデータ グリッドにページングが必要であるというお考えをお持ちの場合は、 あるいは Brian Lagunas (blagunas@infragistics.com) に直接ご連絡ください。必要となる理由がどういったものであるかをお伺いさせていただければ幸いです。

xamGrid の今後

さて、xamGrid と関連する エディターコントロールについてですが、弊社は、多くのお客様がこれらのコントロールを現在もご利用いただいていることを認識しており、突然、すべてを移行するということは現実的ではないでしょう。

そのため、弊社は今後、今回の指針を皆様にお届けするように取り組んでいきます。

ここ数年、xamGrid および関連エディターについては、新規機能が追加されず、また、Visual Studio のツールボックスから表示されなくなりました。更に、サンプルブラウザーからも削除され、製品ページのコントロール一覧からも削除されました。現在、WPF アプリケーションにおいて、xamGrid および関連エディターが利用されているのは、2 年以上前のバージョンをご利用いただいているか、あるいは手動で参照を追加いただいた場合となるでしょう。

日本オフィスにおいても、既にご利用いただいているお客様よりお問い合わせをいただいた際や、新規に製品をご利用されることを計画されていらっしゃるお客様には、数年前より個別にご案内を差し上げさせていただいております。

そして、今回、公式に今後、xamGrid と関連エディターについては新規機能の実装を行わないことを表明いたします。この表明で何かが急に変わるということはありませんが、下記の通りとなります。

  • 今後、対象のコントロールの製品ドキュメントには xamDataGrid およびその関連エディターをご利用いただくことを推奨する文言が追加されます。
  • xamGrid と関連エディターで致命的な不具合が発生した場合は、引き続きご対応する予定です。
  • コントロールおよびアセンブリを直近で削除する予定はありません。

次のステップとして

繰り返しとなりますが、今回の表明で即座に対象のコントロールを製品から削除する予定はありません。おそらく全てのお客様に移行いただくには、数年を要すると考えています。

また、皆様に多くの時間とリソースを WPF において xamGrid を利用するために投入いただいたことについては、プロダクト オーナーである、Brian Lagunas も下記のように記しています。

I also understand that this may be frustrating for a lot of people using the xamGrid and have a lot of time and code invested in it.  As a fellow developer, I completely understand the position you are in and I sincerely empathize with you.  However, I cannot sit by and let you continue to use a control that we have no intention of moving forward.  That would not be fair to you, your customers, or the company you work for.

Our investments are in the xamDataGrid. That is the grid we are moving forward.  Every release there is a new feature, improvement, or productivity tool to support it (just wait until you see the upcoming xamDataGrid control configurator). That is where I want you to be.

If you use the xamGrid and are freaking out about this blog post, please contact me. I want to put together a guide to help you migrate your code over to the xamDataGrid.  I need to know what features you are using. How you are extending the grid or customizing it.  I want to know if there is anything blocking you from moving to the xamDataGrid (for example; paging).

彼のメッセージにもあるように、我々の xamDataGrid への投資は続いています。新機能や、近日リリース予定のコントロールコンフィギュレーターをご利用いただき、高機能なグリッドをぜひご活用ください。

まとめ

現時点で弊社は、今回対象となっているコントロールのアセンブリをコード上で非推奨としたり、製品から削除したりということは行っていません。xamGrid と関連エディターは製品に含まれています。

今回のエントリの目的は、製品に複数存在しているコントロールについてどのコントロールを使うべきかを明確にし、今後、弊社製品をご活用いただく際に混乱を生じさせないことです。

今後も xamGrid と関連エディターをご利用いただける状態ですが、新ためて、xamDataGrid および WPF 専用 エディターをお奨めします。

何卒、ご理解の程、よろしくお願いします。

Posted: 26 Jan 2018, 17:43

Comments

No Comments

Anonymous comments are disabled