キャンバスアプリのギャラリーのItemsプロパティ(データソース)にWith関数を使ったときの動作が気になったので調査
今回確認したいこと




今回はこのギャラリーの、ItemsプロパティにWith関数を使用したときのギャラリーの動作を確認する。

パターン1 : Filterの結果をWithの変数に入れる場合
まずはWith関数で宣言する変数にFilterの結果を代入してギャラリーで表示する場合。

ここまではわかりやすい。
パターン2:Filterの条件式に使う値をWithの変数に入れる場合
続いてWith関数で宣言する変数にFilter式で使用する値を代入する場合。

パターン3:With関数でFilter式で一切使用しない変数を代入する場合
最後はWith関数でFilter式に一切関係しない変数を代入した場合。

ということでこれまでの結果を見ると、ギャラリーのItemsプロパティにWith関数を使用すると、ギャラリーの遅延読み込み機能が動かず、データ行の制限数分のアイテムしか表示できない、動作になることがわかる。
警告がでないためややこしいけど、ギャラリーに対してWith関数を使うのは控えたほうがよさげ。
おまけ:UpdateContextやFormulasで宣言した変数を使えば、遅延読み込み機能は動作する



