属性(Properties):
- ID:控件的唯一标识符。
- Title:面板的标题。
- Layout:布局方式,如 ColumnLayout、AnchorLayout 等。
- AutoScroll:是否启用自动滚动。
- Items:面板中包含的子组件。
- Width、Height:面板的宽度和高度。
- Padding:内边距。
- Border:是否显示边框。
- LabelWidth:标签的宽度。
- FieldLabel:字段的标签文本。
- AllowBlank:是否允许字段为空。
- EmptyText:空文本提示。
- ReadOnly:是否只读。
- FieldStyle:字段的样式。
方法(Methods):
- loadRecord(record):加载数据记录到表单中。
- getForm():获取表单对象。
- submit(config):提交表单数据。
- isValid():验证表单数据是否有效。
- reset():重置表单数据。
事件(Events):
- BeforeSubmit:在提交表单之前触发。
- Submit:提交表单时触发。
- ValidityChange:表单字段有效性变化时触发。
补充:
ValidityChange 事件通常在表单字段的有效性发生变化时触发,用于检查表单字段的校验状态。在 Ext.NET 中,可以通过设置表单字段的 AllowBlank 属性来指定是否需要校验该字段,如果设置为 false ,则表示该字段需要进行校验;如果设置为 true ,则表示该字段可以为空,不需要校验。
在 ValidityChange 事件中,通常会检查所有需要校验的字段的校验状态,以确定整个表单的校验状态。如果所有需要校验的字段都通过了校验,则可以启用提交按钮或执行其他操作;如果存在未通过校验的字段,则可以禁用提交按钮或给出相应提示。
代码示例:
<ext:FormPanel ID="FormPanelProcessMaintain" runat="server" AutoScroll="true" Layout="ColumnLayout">
<Items>
<ext:Panel ID="PanelMaintainPart1" ColumnWidth=".5" runat="server" Border="false" Layout="AnchorLayout">
<Items>
<ext:TextField ID="TextFieldMaintain_plant" runat="server" FieldLabel="工厂" Padding="5" TabIndex="110" LabelWidth="160" AllowBlank="false" EmptyText="必填项不得为空" ReadOnly="true" FieldStyle="background-color: gainsboro; background-image: none;"></ext:TextField>
<ext:TextField ID="TextFieldMaintain_shipfrom" runat="server" FieldLabel="shipfrom" Padding="5" TabIndex="130" LabelWidth="160"></ext:TextField>
</Items>
</ext:Panel>
<ext:Panel ID="PanelMaintainPart2" ColumnWidth=".5" runat="server" Border="false" Layout="AnchorLayout">
<Items>
<ext:ToolbarSpacer runat="server" Height="33px"></ext:ToolbarSpacer>
<ext:TextField ID="TextFieldMaintain_shipto" runat="server" FieldLabel="shipto" Padding="5" TabIndex="120" LabelWidth="160"></ext:TextField>
</Items>
</ext:Panel>
</Items>
<Listeners>
<ValidityChange Handler="#{ButtonMaintainSure}.setDisabled(!valid);"></ValidityChange>
</Listeners>
</ext:FormPanel>
说明:
-
ext:FormPanel :这是一个 Ext.NET 中的 FormPanel 控件,用于显示表单内容。包含表单字段和其他子组件,并提供表单提交等功能。
-
ID=“FormPanelProcessMaintain” :指定了该 FormPanel 控件的唯一标识符,以便在后台代码中引用和操作该控件。
-
AutoScroll=“true” :设置为 true 表示启用自动滚动功能,当表单内容超出可见区域时会显示滚动条。
-
Layout=“ColumnLayout” :指定了该 FormPanel 的布局方式为列布局,子组件会按列排列。
-
:在 FormPanel 中定义了多个子组件,用于显示表单字段和其他内容。
-
ext:Panel :这是一个 Ext.NET 中的 Panel 控件,用于容纳其他子组件。在这里,定义了两个 Panel 子组件,分别是 PanelMaintainPart1 和 PanelMaintainPart2 。
-
ext:TextField :这是一个 Ext.NET 中的 TextField 控件,用于显示文本输入框。在这里,定义了多个文本输入框,如 TextFieldMaintain_plant 、 TextFieldMaintain_shipfrom 、 TextFieldMaintain_shipto 等。
-
Listeners :定义了事件监听器,用于监听表单字段的有效性变化。在这里,当表单字段的有效性发生变化时,会执行相应的处理逻辑。
-
Handler : #{ButtonMaintainSure}.setDisabled(!valid); 是事件处理程序的具体逻辑。表示当表单字段的有效性发生变化时,会禁用或启用ID名为 ButtonMaintainSure 的按钮,具体状态取决于 valid 变量的值。