我们有一个自定义操作,它遵循幕后的一些自定义工作流逻辑,并希望为捕获到设置的数据添加布局。我能够添加一个复选框来启用与自定义操作相关联的布局(它是一个可选项),但我似乎无法找到如何在表单中添加布局编辑器?
var f = shapeFactory.Form(
Id: "ActionForm",
_Outcomes: shapeFactory.TextBox(Id: "action-text-box", Name: "Action", Title: T("Action")),
_HasLayout: shapeFactory.CheckBox(Id: "HasLayout", Name: "HasLayout", Title: T("Uses Layout"), Value: "true"),
//_Layout: shapeFactory.Parts_Layout_Edit(Id: "Layout", Name: "Layout", Title: T("Layout"))
);
这就是我现在所处的位置(最后一行被评论,因为部件名称不正确),但我觉得我缺少一些添加布局编辑器的核心概念...任何帮助将不胜感激!< / p>
答案 0 :(得分:0)
经过多次实验,我发现了这一点。 添加到表单说明
_Form: shapeFactory.EditorTemplate(Id: "Form", Name: "Form", Title: T("From"), TemplateName: "Parts.Layout", Prefix: "LayoutPart",
Model: new LayoutPartViewModel {
LayoutEditor = layoutEditorFactory.Create("", Guid.NewGuid().ToString())
})
然后你需要在表单页面中添加一个脚本,以便用绑定数据重新加载布局编辑器。
$(document).ready(function(){
var layoutEditorData = JSON.parse($("[name$='.LayoutEditor.Data']").val());
window.layoutEditor = new LayoutEditor.Editor(window.layoutEditor.config, layoutEditorData);
});