PowerApps中如何设置单选按钮选中值(SQL问卷编辑场景)
解决PowerApps是/否单选按钮编辑赋值问题
1. 先固定单选按钮的选项集合
首先确保你的是/否单选按钮Items属性设置为标准结构,避免出现空选项:
Table({Value: "Yes"}, {Value: "No"})
2. 修正默认选中项的逻辑
不用单独存字符串变量,直接在单选按钮的DefaultSelectedItems属性中写匹配逻辑,返回和Items结构一致的记录:
LookUp( Table({Value: "Yes"}, {Value: "No"}), Value = If( LookUp(CLAnswers, CheckListId = SCTable.Selected.CheckListId && QuestionId = 27, false).Answer, "Yes", "No" ) )
如果需要复用逻辑,也可以把记录存在变量里。在选中问卷的触发事件(比如SCTable的OnSelect)中执行:
Set( SCQ27Record, { Value: If( LookUp(CLAnswers, CheckListId = SCTable.Selected.CheckListId && QuestionId = 27, false).Answer, "Yes", "No" ) } )
然后把单选按钮的DefaultSelectedItems设为SCQ27Record。
3. 处理无匹配记录的边界情况
如果CLAnswers中可能没有对应CheckListId和QuestionId的记录,要避免错误,补充空值判断:
Set( SCQ27Record, { Value: If( !IsBlank(LookUp(CLAnswers, CheckListId = SCTable.Selected.CheckListId && QuestionId = 27)) && LookUp(CLAnswers, CheckListId = SCTable.Selected.CheckListId && QuestionId = 27).Answer, "Yes", "No" ) } )
原方法无效的原因
- 你之前把
DefaultSelectedItems设为{Value: SCQ27},但SCQ27是字符串,单选按钮需要的是和Items完全匹配的记录结构,而非单独字符串,这会导致控件无法识别,甚至生成空选项。 - 正确逻辑是让
DefaultSelectedItems返回的记录和Items中的某一条完全对应,才能正确选中。
内容的提问来源于stack exchange,提问作者Andrew Casey
相关产品推荐
相关产品推荐

