エクセルの条件付き書式のように、グリッドの特定の列の値に応じて、行全体の背景色を変更したいという場面があるかと思います。
グリッドの Class プロパティの値を動的にすることで、実現できます。
-
- 変更する色を定義したGridクラスを、テーマオブジェクトに追加します。
ポイントは Lines back color プロパティと Lines back color even プロパティに定義する色を同じにします。
- 下記のように、Loadイベントに特定列の値に応じてClassを動的に変更するように実装します。
12345678910Event Load// 登録日が2018/01/01以降の場合に、行全体を黄色にするIf ProductInsDate >= #2018-01-01#Grid.Class = "WorkWithYellow"ElseGrid.Class = "WorkWith"EndIfEndEvent - ビルドをして画面にアクセルすると、値に応じて行の背景色が変わっていることが確認できます。
- 変更する色を定義したGridクラスを、テーマオブジェクトに追加します。
なお、WorkWithPlus 10.1以降では本件をより簡単に実現する機能があります。
「WorkWithPlusを使ったグリッド行の背景色指定」の記事をご参照ください。