Power Appsでデータの一覧表示を実現するコントロールには「ギャラリー」と「データテーブル」がある。
今回はこの「データテーブル」について詳しく調査したので、基本的な使い方やギャラリーとの違いをメモ。

データテーブル
データテーブルコントロールはデータをExcelのようにテーブル形式で表示できるコントロール。

- 単一選択(複数選択は不可)
- 列幅変更可能(保存はされない)
- ハイパーリンクの表示とクリックでの遷移が可能
- 自動でヘッダーを出してくれる
- スクロールバーが2方向(縦と横)に出る
基本的な使い方






データの選択も可能


「ギャラリー」との使い分け
同じようにデータを一覧で表示するコントロールに「ギャラリー」がある。
- 細かいUI設定はせず、表示する情報量が多い:データテーブル
- 細かいUI設定をしつつ、表示する情報量はあまり多くない:ギャラリー
という感じかなと思っている。
以下、2つの違いを少し細かく見ていく。
スクロールバーの表示の違い
- ギャラリー:縦 or 横
- データテーブル:縦と横

横にも縦にも情報が多いデータを表示するときはデータテーブルがよさそう。
ギャラリーも縦にも横にもスクロール可能にできたので、ギャラリーでも上記は要件は満たせる。

見た目の細かい調整
見た目の細かい調整は圧倒的にギャラリーの方が上。

一覧表示したデータをある程度見た目よく表示したいときはギャラリーの方がおすすめ。
列の追加 → データテーブルはLookUpが使えない?





一覧表示したデータごとに「処理を追加したい(表示を増やしたい)」場合はギャラリーの方が融通がききそう。
データテーブルは他のコントロールからItemsへアクセスできない
データテーブルは一覧表示しているデータに対し、他のコントロールからアクセスすることができない。
※ただし遅延読み込み機能があるので、その時点で読み込みが完了しているアイテムの数になる。

ForAll関数とAllItemsプロパティを組み合わせるとループ処理も可能だけど、データテーブルはこのAllItemsプロパティに当たるプロパティがない。。
※この場合もちろん委任警告は発生する。

結論
ということで、冒頭でも述べたけど、
細かいUI設定はせず、各データへのアクセスもせず、表示する情報量が多いデータを扱う場合は「データテーブル」を、
細かいUI設定がしたい、または各データへのアクセスがしたい場合や、表示する情報量が少ないデータを扱う場合は「ギャラリー」を、
選ぶのが良いかと。
ちなみに体感だけど、表示速度はデータテーブルの方が速そう(あくまで体感)。


コメント