DX Microsoft

【PowerApps】 ギャラリー スクロールバーを一番上に移動する方法

2023年10月11日

みなさんこんばんは。本日はPowerAppsに関するTipsを紹介したいと思います。

昨今、PowerAppsなどを含むPowerPlatformを利用する企業が増えており、当社にも多数お声がけがあります。

今回は当社がタイトル名のことを実施するときに少し躓いたポイントをナレッジ共有したいと思います。

コンポーネントの配置

実際に動作確認をするためにCANVASアプリを新規で作成し、以下のコンポーネントを配置します。

  • ボタン: Button1
  • 垂直ギャラリー: TemplateGalleryList1

また、ギャラリーにデータを表示するために、SharePointListを1つ作成してデータコネクトを追加しておいてください。

コンポーネント配置サンプル

処理の実装

  1. ボタンを押すとPatch関数を使用して、SharePointListにデータを追加します。
  2. Patch関数の後に、以下のコードを呼び出してください。
    • このReset関数を呼ぶことでスクロールバーを簡単に一番上に戻すことができます。
// Patch(); // 省略
Reset(TemplateGalleryList1);

SharePointListのデータ量が多いケースや書き込みに時間がかかるケース

SharePointListのデータ数が5000件を超えるなど、データ量が多いときはPatch関数実行から、書き込み完了まで時間がかかることがあります。

このような場面ではReset関数を呼び出しても、一番上ではなく、上から●番目のような、変な場所に移動することがあります。

これを防ぐために、Reset関数でスクロールを戻す位置を明示的に決めてあげます。

以下をギャラリーコンポーネントのDefaultプロパティに記載すると正しく動作します。

First(Self.AllItems)

本日の内容は以上となります。

読者の皆様も同じことを実装したい場合は是非参考にしてください!

当社はPowerPlatformに関する豊富な実績をもっておりますので、開発リソースが足りない際などはお声がけください。

  • この記事を書いた人
  • 最新記事

石川 侑扶(Yusuke Ishikawa)

IoT, AI, デジタルツイン等の最先端な開発経験とセキュリティコンサルティング経験を元に世の中を変えます!

-DX, Microsoft
-,