知識ゼロからはじめるローコーディング開発

Power Platformでのアプリ開発について、いろいろと書きたいと思います。

ギャラリーデータを上下ボタンで入れ替えるには

今回は Power Apps のギャラリーデータを上下ボタンで入れ替える方法を説明したいと思います。プログラミングの学習だと配列にセットしたデータの順番を入れ替える等の課題で必ず目にすると思うのですが、Power Apps のギャラリーだと少し工夫が必要です。

f:id:island3m:20211201013615p:plain

 

下のTwitterに投稿したアプリで、実際に動かしているシーンが見れます。イベントのタイムスケジュールを管理するアプリですが、スケジュールを上下ボタンで入れ替えているのがわかるかなと思います。(0:48)

この機能を実装するには、ギャラリーに表示をしているデータに順番をセットする列を追加しておきます。ここではSortNoとし、連番をセットします。ギャラリーではSortNo列で昇順に並び替えています。

f:id:island3m:20211201013731p:plain

連番のセットの仕方は下記ブログを参考にして下さい。

 

例えば下図で①と②のデータを並び替えるにはこのようにします。ボタン[↑]を押した時のアクションをプロパティ[OnSelect]にセットします。②の[↑]ボタンを押した時を例に説明します。手順は4つあります。

 

1.最初に変数TmpSortNoに②のSortNoの値をセットします。

f:id:island3m:20211201013836p:plain

2.①のSortNoの値を、一旦0にしておきます。

3.②のSortNoの値を「-1」します。

4.変数TmpSortNoにセットした値を①のSortNoにセットして完了です。

ギャラリーにはソートがかかっていますので、あとは自動的に並び替えられます。

f:id:island3m:20211201013919p:plain

 

[↓]ボタンも作りは同じです、上の手順で「-1」としていたところを「+1」にするだけです。

f:id:island3m:20211201014028p:plain


ボタンが一番上にあるとき、下にあるときは押す必要がありませんのでDisplayModeを下図のようにセットして、無効にしておきます。

f:id:island3m:20211201014201p:plain

 

以上で完成です。
Twitterのアプリでは、ギャラリーに直接データソースを参照させるのではなく、一度コレクションに入れたデータを参照するようにしていて、編集した後に一括でデータソースに更新をかけるようにしています。その方がスムーズに動作すると思います。

ギャラリーデータの順番を入れ替える方法は様々なアプリで利用出来ると思いますので、ぜひトライしてみて下さい。