マイナスの値(負数)を赤字で表示するには、条件付きセルスタイルを使用します。
デザイナによる設定
- マイナスの値(負数)を赤字で表示する数値型セルを選択する(例:numericUpDownCell1)
- プロパティウィンドウでStyleプロパティを選択し、ドロップダウンリストからCombined Styleを選択する。
- Styleプロパティの左の「+」をクリックしてCombinedStyleクラスのメンバを展開し、Itemsプロパティのコレクションの[...]ボタンをクリックする。
- 表示されたCombinedCellStyleエディタでCellStyleを追加し、CellStyleプロパティで次の設定を行う。
- ForeColorプロパティをBlackに設定する。
- TextAlignプロパティをTopRightに設定する。
- 続いてConditionalCellStyleを追加し、ConditionalCellStyleプロパティのItemsプロパティで次の設定を行う。
- Itemsプロパティのコレクションの[...]ボタンをクリックする。
- 表示された「条件付き書式ルールエディタ」で「より小さい」を追加する。
- 条件のセル値でNumberを選択する。
- セルスタイルの種類のプロパティでCellStyleを選択した状態のまま、ForeColorプロパティをRedに設定する。
- OKボタンをクリックして変更を確定する。
- デザイナのドキュメントウィンドウのタブを「実行時」に切り替える。
- -1、0、1を入力したときの表示の変化を確認する。(セル選択時の文字色は変更していないため、他のセルに移動して結果を確認します)
コーディングによる設定
Imports GrapeCity.Win.MultiRow Dim NumericUpDownCell1 As New NumericUpDownCell() NumericUpDownCell1.Name = "NumericUpDownCell1" NumericUpDownCell1.Value = 0 Dim baseStyle As New CellStyle() baseStyle.ForeColor = Color.Black baseStyle.TextAlign = MultiRowContentAlignment.TopRight Dim negativeValueColor As New CellStyle() negativeValueColor.ForeColor = Color.Red Dim conditionalCellStyle1 As New ConditionalCellStyle() conditionalCellStyle1.Items.Add(negativeValueColor, ConditionalCellStyleOperator.LessThan, 0) Dim combinedCellStyle1 As New CombinedCellStyle() combinedCellStyle1.Items.Add(baseStyle) combinedCellStyle1.Items.Add(conditionalCellStyle1) NumericUpDownCell1.Style = combinedCellStyle1 GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {NumericUpDownCell1})
using GrapeCity.Win.MultiRow; NumericUpDownCell numericUpDownCell1 = new NumericUpDownCell(); numericUpDownCell1.Name = "numericUpDownCell1"; numericUpDownCell1.Value = 0; CellStyle baseStyle = new CellStyle(); baseStyle.ForeColor = Color.Black; baseStyle.TextAlign = MultiRowContentAlignment.TopRight; CellStyle negativeValueColor = new CellStyle(); negativeValueColor.ForeColor = Color.Red; ConditionalCellStyle conditionalCellStyle1 = new ConditionalCellStyle(); conditionalCellStyle1.Items.Add(negativeValueColor, ConditionalCellStyleOperator.LessThan, 0); CombinedCellStyle combinedCellStyle1 = new CombinedCellStyle(); combinedCellStyle1.Items.Add(baseStyle); combinedCellStyle1.Items.Add(conditionalCellStyle1); numericUpDownCell1.Style = combinedCellStyle1; gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { numericUpDownCell1 });