特殊属性
窗体包含若干被忽视的属性和命名运算符。 本节将介绍 Error 属性、Unsaved 属性、ThisItem 命名运算符和 Parent 命名运算符的使用时机和方式。
Error 属性
Error 属性包含窗体控件生成的任何错误消息的输出。 要查看属性的内容,请在屏幕中添加文本标签控件,然后在 Text 属性中输入公式 Form1.Error。 无错误时标签为空白,但如果尝试在未输入所有必填列的情况下提交窗体,将看到“条目为必填或存在无效值。 请更正并重试。”可在公式或其他控件中使用此值设计应用错误处理。
Unsaved 属性
Unsaved属性为布尔属性,窗体已编辑但未提交时值为 true。 可使用本属性检查用户是否有未保存的更改。 例如设置应用中的“后退”按钮,检查是否未保存窗体,存在未保存的数据时不进行导航。 为此,可在按钮控件的 OnSelect 属性中使用以下公式。
If(YourFormName.Unsaved = false, Navigate(WelcomeScreen, ScreenTransition.Cover))
本函数检查名为 YourFormName 的窗体控件的 Unsaved 属性是否为 false。 如果本属性为 false,用户将导航到 WelcomeScreen 屏幕。 本属性为 true 时不执行任何操作。 在应用中,可扩展此概念来添加警告消息甚至弹出框,告知用户无法离开的原因。
除了这些属性,窗体控件还与库控件一样包含命名运算符 ThisItem 和 Parent。
ThisItem 命名运算符
在窗体或库控件中,可以使用 ThisItem 引用当前记录的值。 手动创建公式来引用记录中的值时,这会很有用。 例如可以使用以下公式添加标签,将 FirstName 和 LastName 列合并为中间带空格的字符串。
ThisItem.FirstName & " " & ThisItem.LastName
此公式假设窗体控件中显示的记录包含名为“FirstName”的列和名为“LastName”的列。
Parent 命名运算符
窗体和库控件中存在父对象概念。 对于窗体控件中的输入或其他控件,可以使用 Parent. 以及要引用的属性名称从数据卡拉取属性。 例如默认值。 数据卡将本值存储在各自的默认属性中。 在输入控件中,可在输入控件的默认值中使用公式 Parent.Default 引用本值。 库包含相同的 Parent 概念,可用于查询库内各控件中的库控件属性。