![WinCalcManager Creating a Calculated Column in the WinGrid 01.png](images/WinCalcManager_Creating_a_Calculated_Column_in_the_WinGrid_01.png)
WinCalcManager には、WinGrid 列内で計算を実行する機能があります。この方法を手順に沿って説明します。
WinCalcManager と WinGrid を使用したプロジェクトを設定します。Visual Studio で、Visual Basic .NET または C# いずれかの Windows アプリケーションを新規作成します。UltraCalcManager と UltraWinGrid をフォームに追加します。
次に WinGrid をデータ バインドします。この方法の詳細については、「WinGrid をフラットデータソースにバインドする」 を参照してください。ここでは、Northwind データベースの Order Details テーブルをデータとして使用します。Northwind データベース(Nwind.mdb)は Infragistics SDK インストールの一部として使用できます。デフォルトで、NWind.mdb ファイルは、オペレーティング システムによって、以下のインストール フォルダに配置されています。
XP — C:\Documents and Settings\All Users\Documents\Infragistics\2024.1Ultimate UI for Windows Forms 2024.1\Samples\WinForms\Data
Vista — C:\Users\Public\Documents\Infragistics\2024.1Ultimate UI for Windows Forms 2024.1\Samples\WinForms\Data
これでグリッドのデータ ソースが設定されました。次に、計算のためにアンバインド列を作成します。アンバインド列を WinGrid に追加します。WinGrid を右クリックして [UltraGrid デザイナ] を選択し、グリッド デザイナを起動します。
WebGrid デザイナで、ノードをドリルダウンします。[バンドおよび列の設定] > [Band[0] - 'Order Details'] の順にノードを展開します。このノードを選択すると、このバンドで使用可能な列が中央ペインに表示されます。
下の [アンバウンド列の追加] ボタンをクリックして、新しい列をバンドに追加します。
列のキーを "ItemTotal" に変更します。列の Header.Caption を "Item Total" に変更します。列の DataType を System.Decimal に変更します。
左側に Operands リストがあります。[Controls] ノードをクリックし、キーボードの数字キーパッドのアスタリスク(*)を押します。これでツリー全体が展開されます。UltraGrid1 とそのひとつのバンド(Order Details)、およびグリッドの 6 つの列がツリーに表示されます。
リスト中のアンバインド列はグレー表示になっています。これは "Item Total" 列の数式を編集しようとしているためです。それ自体を参照する数式は循環参照になるため、編集対象のノードは無効にされます。
列の数式では、UnitPrice と Quantity を掛けてから、Discount をパーセントで適用します。まず UnitPrice と Quantity を掛けます。これには、標準の乗算演算子(*)を使う方法と product 関数を使う方法の 2 通りがあります。ここでは、標準の乗算演算子の方法を示します。
まず、UnitPrice 列への参照を数式ウィンドウに挿入する必要があります。これには次の 3 通りの方法があります。
オペランド ツリーで [UnitPrice] ノードをダブルクリックする。
数式ウィンドウを右クリックして [オペランドの挿入] を選択し、メニューをドリルダウンして [UnitPrice] を選択する。
数式ウィンドウに直接入力する。
次に、乗算演算子を追加します。数式ウィンドウの下に並んだボタンの中から * ボタンをクリックするか、適切な位置にアスタリスクを入力します。
次に、UnitPrice を追加したときと同様に Quantity への参照を追加します。
この時点で、右下の数式ステータス ウィンドウには数式のコンパイルが成功したことが表示されます。これは作成した数式がすでに有効であることを示しますが、まだ割引を適用していません。
この数式を設計するための方法は多数あります。1 マイナスの割引を掛けて完了します。数式がどのように表示されるかの例を以下に示します。以下の数式はすべて有効です。
数式が完成したら、[FormulaBuilder] ダイアログで [OK] をクリックします。作成した数式がグリッド列の Formula プロパティに表示されます。
[適用] をクリックしてデザイナで行った設定を保存してから、[OK] をクリックしてグリッド デザイナを終了します。
アプリケーションを実行して結果を確認します。
この詳細なガイドの目的は、WinCalcManager を使用して WinGrid に計算列を作成する手順を説明することです。