Powerapps — Вложенный оператор If, может быть, переключиться?

#if-statement #powerapps

#если-заявление #powerapps

Вопрос:

Я пытаюсь добиться следующего:

Заполните поле ввода текста красным или зеленым цветом в зависимости от введенного значения. Это становится немного сложнее, так как ввод текста находится в галерее, и я хочу, чтобы он стал красным или зеленым, только если выбранный вопрос «FR Хлор» или «ph фактический». Поле ввода должно быть белым, если это не один из этих двух вопросов.

Чтобы определить, хотим ли мы заполнить красным или зеленым цветом, существует еще один оператор if, который проверяет введенное значение по заранее определенным переменным, содержащим значения сравнения. Кто-нибудь может помочь мне привести это в порядок, так как я, кажется, где-то в затруднительном положении.

 If(  ThisItem.question = "FR Chlorine",  If(  Value(txtResult.Text) lt; ChlorineLowerLevel,  Red,  Value(txtResult.Text) gt; ChlorineUpperLevel,  Red,  Green  ),  White ); If(  ThisItem.question = "ph Actual",  If(  Value(txtResult.Text) lt; phLowerLevel,  Red,  Value(txtResult.Text) gt; phUpperLevel,  Red,  Green  ),  White )  

Ответ №1:

Вы можете использовать что-то вроде приведенного ниже выражения:

 If(  ThisItem.question = "FR Chlorine",  If(  Value(txtResult.Text) lt; ChlorineLowerLevel Or Value(txtResult.Text) gt; ChlorineUpperLevel,  Red,  Green  ),  ThisItem.question = "ph Actual",  If(  Value(txtResult.Text) lt; phLowerLevel Or Value(txtResult.Text) gt; phUpperLevel,  Red,  Green  ),  White )  

Вы также можете сделать то же самое с функцией переключения:

 Switch(  ThisItem.question,  "FR Chlorine",  If(  Value(txtResult.Text) lt; ChlorineLowerLevel Or Value(txtResult.Text) gt; ChlorineUpperLevel,  Red,  Green  ),  "ph Actual",  If(  Value(txtResult.Text) lt; phLowerLevel Or Value(txtResult.Text) gt; phUpperLevel,  Red,  Green  ),  White )