コントロールと関数を使用して動的な式を作成する
次の演習では、ボタン コントロールと UpdateContext 関数を使用して、ボタンの DisplayMode を変更するための動的な式を作成します。
Power Apps に移動します。
+ 作成 > 空のアプリ > 作成を選択します (空白のキャンバス アプリから)。 アプリに名前を付けて、作成を選択します。
挿入メニュー オプションを選択し、ボタンを追加します。
ボタンの Text プロパティを追加に変更します。
ヒント
編集モードでコントロールをダブルクリックすると、ボタン コントロールの Text プロパティをすばやく変更できます。
もう 1 つの ボタン コントロールを挿入し、Text プロパティを Clear に変更します。
1 つのテキスト ラベルと、1 つのテキスト入力をキャンバスに追加します。
テキスト入力コントロール tiAmount の名前を変更し、Default プロパティの "テキスト入力" を削除します。Format プロパティには、
TextFormat.Number
と入力します。注
次の画像は完成した演習を示しています。 コントロールの配置と名前については、この画像を参照してください。 コードでエラーが返される場合は、コントロール名が記述されたコードと一致しているかどうかを再確認してください。
Add ボタン (Button1) を選択し、OnSelect プロパティを次のように設定します。
UpdateContext({RunningTotal: RunningTotal + Value(tiAmount.Text)})
Clear ボタン (Button2) を選択し、OnSelect プロパティを次のように設定します。
UpdateContext({RunningTotal: 0}); Reset (tiAmount)
[Clear] ボタンの DisplayMode プロパティを次のように設定します。
If(RunningTotal > 0, DisplayMode.Edit, DisplayMode.Disabled)
DisplayMode プロパティを更新した後、グレー表示 (または disabled) になることに注意してください。
ラベル (Label1) コントロールを選択し、Text プロパティをコンテキスト変数 (
RunningTotal
) に更新しますアプリをプレビュー モードでテストします。 テキスト入力で正数を入力し、Add ボタンを選択します。
Add ボタンを選択するとすぐに、Clear ボタンが再び選択可能になります。
Clear ボタンを選択して、入力フィールドと RunningTotal を消去します。
この例では、If 関数を使用して RunningTotal が 0 より大きいかどうかを調べます。 0 より大きい場合、Clear ボタンは編集可能になります (DisplayMode.Edit)。 変数が値なしか 0 の場合は、ボタンが無効になります (DisplayMode.disabled)。
コンテキスト変数を式に使用しない方法でも、同じ機能を実装できます。 その場合は、DisplayModeの式でコントロールに名前を付けます。 たとえば、式のラベル コントロールの値を使用できます。
アプリを編集モードに戻して、Clear ボタンを選択します。 DisplayMode プロパティを選択し、式を次のように変更します。
If(Value(Label1.Text) > 0, DisplayMode.Edit, DisplayMode.Disabled)
このラベル コントロールはテキストとして情報を格納しているため、Value 関数を使用することを忘れないでください。 Value 関数は、数字の文字列を数値に変換するときに使用します。 数値に対してテキストを評価すると、式でエラーが表示されます。 ラベルの Text プロパティを Value 関数でラップすると、Power Apps で数値として解釈されます。
アプリについてさらに学習、開発、展開を続ければ、異なるコントロール、関数、プロパティを使用して同じ機能を作成する方法が少なくともいくつかあることがわかるでしょう。