はじめに
唐突ですが、皆さんPower Apps でコンポーネント作成されていますでしょうか?
今回はPower Apps のコンポーネントが表示されたときをトリガーに特定のアクションを実行するためのロジックを作成してみようと思います。
いわゆるScreen コントロールで設定可能な OnVisible
ですね。
動作イメージは以下。
実装方法
実装方法は極めて単純です。
使用するのは切り替え(トグル)コントロールのみです。
トグルコントロールを配置して、 Defalt
に以下式を記載します。
Toggle.Defalt
Parent.Visible
これにより親要素、つまりコンポーネントが表示されている場合は true
(トグルがチェック)、コンポーネントが非表示の場合は false
(トグルがオフ)が設定されるようになります。
コンポーネントが表示された場合 = トグルがチェックされた場合
ですので、トグルの OnCheck
にコンポーネントの OnVisible
で実行させたいアクションを記載します。
例で挙げたgif だと以下のようになりますね。
Toggle.OnCheck
Notify("コンポーネントが表示されました。")
もし、コンポーネント呼び出し側のアプリでアクションを定義したいのであれば、カスタム プロパティにて動作型のプロパティを作成してあげて
トグルの OnCheck
で動作型のプロパティを実行するようにします。
Toggle.OnCheck
Parent.OnVisible()
おわりに
コンポーネントが表示されたときに上のgif のようにメッセージを表示したい場合や、タイマーを開始させたい場合、グローバル変数を初期化したいときなどに使えそうですね。