没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|行业资讯|编辑:郝浩|2012-09-28 10:54:25.000|阅读 591 次
概述:本文将一步一步第教您如何创建一个自定义约会编辑表单,并且该表单中包含了编辑自定义字段所需的控件。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
本文将一步一步第教您如何创建一个自定义约会编辑表单,并且该表单中包含了编辑自定义字段所需的控件。
第1步:为非标准的约会字段添加自定义字段映射,非标准的约会字段的数据源中有“Amount”和“Memo”名称。
[C#]
Storage.Appointments.CustomFieldMappings.Add(new ASPxAppointmentCustomFieldMapping("Field1","Amount"));
Storage.Appointments.CustomFieldMappings.Add(new ASPxAppointmentCustomFieldMapping("Field2","Memo"));
[VB.NET]
Storage.Appointments.CustomFieldMappings.Add(New ASPxAppointmentCustomFieldMapping("Field1","Amount"))
Storage.Appointments.CustomFieldMappings.Add(New ASPxAppointmentCustomFieldMapping("Field2","Memo"))
第2步:复制~DevExpress\ASPxSchedulerForms\AppointmentForm.ascx和AppointmentForm.ascx.cs到MyForms文件夹
将它们重命名为UserAppointmentForm。
第3步:将AppointmentFormTemplateUrl的属性更改为指向该表单模板新位置的值——~/MyForms/UserAppointmentForm.ascx。
第4步:将UserAppointmentForm页面开始处的“不要修改(DO NOT MODIFY)...”警告删除。
第5步:根据需要将新控件添加到该表单。就我们而言,需要添加的新控件为ASPxTextBox控件(ID设置为tbField1)和ASPxMemo控件(ID设置为memField2)。
第6步:添加一个新的类定义文件到App_Data文件夹。将其命名为“UserAppointmentFormClass.cs”。
第7步:在该文件中定义一个公共类——从DevExpress.Web.ASPxScheduler.AppointmentFormTemplateContainer
AppointmentFormTemplateContainer类继承的UserAppointmentFormTemplateContainer。它将提供来自自定义字段的数据,显示在页面上。您可根据实际需要对数据进行调整,使数据显示适当。
第8步:处理AppointmentFormShowing事件,将您的自定义表单指定为目标容器(而非默认容器)。
[C#]
protected void ASPxScheduler1_AppointmentFormShowing(object sender, AppointmentFormEventArgs e) {
e.Container = new UserAppointmentFormTemplateContainer((ASPxScheduler)sender);
}
[VB.NET]
Protected Sub ASPxScheduler1_AppointmentFormShowing(ByVal sender As Object, ByVal e As AppointmentFormEventArgs)
e.Container = New UserAppointmentFormTemplateContainer(CType(sender, ASPxScheduler))
过程执行结束
第9步:定义一个公共类——从AppointmentFormController类继承的UserAppointmentFormController。它重写了以下方法: IsAppointmentChanged(用来检查需要修改的约会)和ApplyCustomFieldsValues(将已编辑约会的副本的自定义字段值应用到源约会)。
第10步:定义一个公共类——从AppointmentFormSaveCallbackCommand类继承的UserAppointmentSaveCallbackCommand。为从绑定控件中得到新的自定义字段值,您需要重写AssignControllerValues方法。重写CreateAppointmentFormController方法,则将返回一个UserAppointmentFormController实例。
第11步:更改表单HTML代码中的数据绑定,让数据绑定指向UserAppointmentFormTemplateContainer。要做到这一点,需要找出.ascx页HTML代码中数据源属性的内嵌表达式。将AppointmentFormTemplateContaine转换替换为UserAppointmentFormTemplateContainer转换。
第12步:别忘了为新添加的用于显示自定义字段的控件指定数据绑定。
[ASPx]
<dxe:ASPxTextBox ID="tbField1" runat="server" Width="75px" Text='<%#((UserAppointmentFormTemplateContainer)Container).Field1 %>'>
</dxe:ASPxTextBox>
<dxe:ASPxMemo ID="memField2" runat="server" Height="71px" Width="170px" Text='<%#((UserAppointmentFormTemplateContainer)Container).Field2 %>'>
</dxe:ASPxMemo>
第13步:处理BeforeExecuteCallBackCommand事件,以使用您自己的UserAppointmentSaveCallbackCommand类实例,而不是默认命令。
第14步:运行该项目。当打开约会时检查自定表单是否显示出来。填写自定义字段,检查当点击OK时新的值能否保存,能否在下一个打开的表单上恢复。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com
文章转载自:DevExpress中文网通过AI技术的深度整合,TestComplete将测试成功率提升至行业领先水平,让团队真正体验到测试自动化的全部价值。工程师们不再被困在无尽的测试维护中,而是可以将精力集中在更重要的质量保障和创新工作上。这种"即时数据集+自愈测试"的组合,不仅解决了测试数据准备和测试维护两大核心难题,更重新定义了智能质量保障的新标准。
Java测试平台Parasoft Jtest通过智能分析代码依赖关系,实现了“代码变更≠全量重测”的突破。它能够自动识别直接和间接受影响的测试用例,仅运行必要测试,同时与质量洞察平台深度集成,帮助团队从战术测试迈向战略级质量管控,彻底解决了传统单元测试的资源错配与效率瓶颈问题。
Copilot 在 Visual Studio 中迎来了全新升级,不仅带来了更智能的默认模型,还提供了更多模型选择,以及更便捷的使用和计费管理方式,全面提升开发体验!
财富管理软件团队采用TestComplete解决WPF界面自动化测试难题,通过原生控件识别、Jenkins集成实现夜间回归测试,结合模块化设计与数据驱动策略,达成90%自动化测试覆盖率,显著提升测试效率并降低维护成本,满足敏捷开发需求。
优秀的界面控件开发包,帮助企业构建卓越应用!
ASPxScheduler Suite专为ASP.NET设计并优化,包含了创建优秀web应用程序所需的所有元素
DevExpress WPF Subscription高效MVVM开发模式,WPF界面解决方案首选工具,帮助企业实现酷炫动效界面。
DevExpress Silverlight Controls高性价比高实用性的Silverlight用户界面控件套包,拥有大量的示例和帮助文档,开发者能够快速上手!
DevExpress WinForms Subscription为Windows Forms平台创建具有影响力的业务解决方案,高性价比WinForms界面控件套包。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@evget.com
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
慧都科技 版权所有 Copyright 2003-
2025 渝ICP备12000582号-13 渝公网安备
50010702500608号