コントロールと関数を使用して動的な式を作成する

完了

次の演習では、ボタン コントロールと UpdateContext 関数を使用して、ボタンの DisplayMode を変更するための動的な式を作成します。

  1. Power Apps に移動します。

  2. + 作成>空のアプリ>作成を選択します (空白のキャンバス アプリから)。 アプリに名前を付けて、作成を選択します。

  3. 挿入メニュー オプションを選択し、ボタンを追加します。

  4. ボタンの Text プロパティを追加に変更します。

    ヒント

    編集モードでコントロールをダブルクリックすると、ボタン コントロールの Text プロパティをすばやく変更できます。

  5. もう 1 つの ボタン コントロールを挿入し、Text プロパティを Clear に変更します。

  6. 1 つのテキスト ラベルと、1 つのテキスト入力をキャンバスに追加します。

  7. テキスト入力コントロールの名前を tiAmount に変更し、Default プロパティで "テキスト入力" を削除します。 形式に、**TextFormat.Number を入力します。 (コントロールの配置については、下の画像を参照してください。画像は演習の全体を示しています。)

    コントロールの配置のスクリーンショット。

  8. Add ボタン (Button1) を選択し、OnSelect プロパティを次のように設定します。

    UpdateContext({RunningTotal: RunningTotal + Value(tiAmount.Text)})
    
  9. Clear ボタン (Button2) を選択し、OnSelect プロパティを次のように設定します。

    UpdateContext({RunningTotal: 0}); Reset (tiAmount)
    
  10. Clear ボタンの DisplayMode プロパティを次のように設定します。

    If(RunningTotal > 0, DisplayMode.Edit, DisplayMode.Disabled)
    

    DisplayMode プロパティを更新した後、グレー表示になることに注意してください。

  11. ラベル (Label1) を選択し、Text プロパティをコンテキスト変数 (RunningTotal) 更新します

  12. アプリをプレビュー モードでテストします。 テキスト入力で正数を入力し、Add ボタンを選択します。

    Add ボタンを選択するとすぐに、Clear ボタンが再び選択可能になります。

  13. Clear ボタンを選択して、入力フィールドと RunningTotal を消去します。

    この例では、If 関数を使用して RunningTotal が 0 より大きいかどうかを調べます。 0 より大きい場合、Clear ボタンは編集可能になります (DisplayMode.Edit)。 変数が値なしか 0 の場合は、ボタンが無効になります (DisplayMode.disabled)。

    コンテキスト変数を式に使用しない方法でも、同じ機能を実装できます。 その場合は、DisplayModeの式でコントロールに名前を付けます。 たとえば、式のラベル コントロールの値を使用できます。

  14. アプリを編集モードに戻して、Clear ボタンを選択します。 DisplayMode プロパティを選択し、式を次のように変更します。

    If(Value(Label1.Text) > 0, DisplayMode.Edit, DisplayMode.Disabled) 
    

    このラベル コントロールはテキストとして情報を格納しているため、Value 関数を使用することを忘れないでください。 Value 関数は、数字の文字列を数値に変換するときに使用します。 数値に対してテキストを評価すると、式でエラーが表示されます。 ラベルの Text プロパティを Value 関数でラッピングすると、Power Apps で数値として解釈されます。

アプリについてさらに学習、開発、展開を続ければ、異なるコントロール、関数、プロパティを使用して同じ機能を作成する方法が少なくともいくつかあることがわかるでしょう。