电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

二开案例.表单插件.向导式动态表单

来源:金蝶云社区作者:金蝶2024-09-237

二开案例.表单插件.向导式动态表单

【应用场景】 使用表单插件控制向导式动态表单。

【案例演示】新建向导式动态表单,使用表单插件控制该向导式动态表单,例如步骤切换前事件,步骤切换后事件,跳转到指定步骤等。

【实现步骤】

<1>新建向导式动态表单,创建步骤参考:

【二开案例.元模型.向导式动态表单】https://vip.kingdee.com/article/157438440450016768


<2>编写表单插件,代码如下。

using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args.WizardForm;
using Kingdee.BOS.Core.DynamicForm.PlugIn.WizardForm;
using Kingdee.BOS.Util;
using System;
using System.ComponentModel;
namespace Jac.XkDemo.BOS.Business.PlugIn
{
    /// <summary>
    /// 【表单插件】向导式动态表单
    /// https://vip.kingdee.com/article/157454074366437632
    /// </summary>
    [Description("【表单插件】向导式动态表单"), HotUpdate]
    public class WizardStepChangedWizardFormPlugIn : AbstractWizardFormPlugIn
    {
        /// <summary>
        /// 操作步骤切换前事件
        /// </summary>
        /// <param name="e"></param>
        public override void WizardStepChanging(WizardStepChangingEventArgs e)
        {
            base.WizardStepChanging(e);
            if (e.UpDownEnum == 1)
            {
                // 下一步
                if (e.OldWizardStep.Key.Equals("FWizard0", StringComparison.OrdinalIgnoreCase))
                {
                    var phone = this.Model.GetValue("F_Jac_Text") as string;
                    if (string.IsNullOrWhiteSpace(phone))
                    {
                        this.View.ShowWarnningMessage("请输入手机号码!");
                        e.Cancel = true;
                        return;
                    }
                    if (phone == "666")
                    {
                        // 直接跳转到第三步
                        e.JumpWizardStepKey = "FWizard2";
                    }
                    return;
                }
                if (e.OldWizardStep.Key.Equals("FWizard1", StringComparison.OrdinalIgnoreCase))
                {
                    var smsCode = this.Model.GetValue("F_Jac_Text1") as string;
                    if (string.IsNullOrWhiteSpace(smsCode))
                    {
                        this.View.ShowWarnningMessage("请输入验证码!");
                        e.Cancel = true;
                    }
                    return;
                }
            }
            else if (e.UpDownEnum == 2)
            {
                // 上一步
                // TODO
            }
        }
        /// <summary>
        /// 操作步骤切换后事件
        /// </summary>
        /// <param nam

二开案例.表单插件.向导式动态表单

【应用场景】 使用表单插件控制向导式动态表单。【案例演示】新建向导式动态表单,使用表单插件控制该向导式动态表单,例如步骤切换前事件...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信