XamDataGrid では、ユーザーがセルの値を編集した際に、編集後のデータを即座にほかのセルに反映させることができます。
この記事では、XamDataGrid の CellUpdated イベントを使用して、セルが更新されたときに他のセルの値を自動的に更新する方法について解説します。具体例として、商品の単価または数量を入力すると自動的に合計金額を計算する処理をご紹介します。
CellUpdated イベントの設定
CellUpdated イベントが発生した際に、合計金額を自動的に計算するロジックを実装します。
private void XamDataGrid_CellUpdated(object sender, CellUpdatedEventArgs e)
{
DataRecord dataRecord = e.Cell.Record;
if (dataRecord != null)
{
if (dataRecord.DataItem is Sample sample)
{
sample.Price = sample.UnitPrice * sample.Quantity;
}
}
}
このコードでは、CellUpdated イベントが発生した際に、UnitPrice ( 単価 ) と Quantity ( 数量 ) を掛け合わせて Price ( 合計金額 ) に結果を反映させています。これにより、商品の単価や数量を変更すると、自動的に合計金額が更新されます。
XamDataGrid の設定
次に、CellUpdated イベントを XAML で設定します。
<igDP:XamDataGrid
CellUpdated="XamDataGrid_CellUpdated"
....>
....
</igDP:XamDataGrid>
以上の手順で、XamDataGrid のセルが更新されるたびに、対応する合計金額が再計算されます。
実行結果
この実装により、ユーザーが XamDataGrid 上で商品の単価や数量を変更すると、即座に合計金額が再計算されて表示されます。編集されたセルが他のセルと連動して自動的に計算されるため、リアルタイムで正確な金額を確認することが可能です。
