【发布时间】:2016-10-11 13:08:56
【问题描述】:
使用 Kentico 7,我在 aspx 页面上有一个 cms 表单,如下所示:
<cms:CMSForm runat="server" ID="cmsFormCreate"
FormMode="Insert" ShowOkButton="false"
ParentNodeID='<%# documentsFolderNodeID %>'
/>
在后端,我正在设置表单的父节点 ID(所以我有一个要保存的基本位置,稍后我会更改它。
我通过调用获取表单/文档名称
CMS.SettingsProvider.DataClassInfoProvider.GetClasses("*", "className LIKE '%MyDocument.%'", "", Integer.MaxValue).Tables(0).Rows
这会返回一个数据集,我会用它来协商文档名称、类 ID(如果我需要的话)等等。
我想更改回发时加载的表单。也就是说,我在 CMS 站点管理器中有几种文档类型,我想在它们之间进行交换。我想在页面加载时显示一个(这很好用)。但是,当我触发机制来更改显示的表单(下拉列表 OnSelectedIndexChanged)时,它无法加载新表单。
Private Sub PopulateCMSForm(ByRef targetForm As CMS.FormControls.CMSForm, sourceDDL As ListItem)
targetForm.FormName = sourceDDL.Value
'targetForm.LoadForm() 'same results with or without this
End Sub
我已经通过硬编码表单名称(文档类型代码名称)验证了我期望的表单正确显示,并且表单将在页面第一次加载时正常显示。
如何更改 CMS 表单对象在回发时加载的空/空白文档类型?
【问题讨论】:
标签: c# asp.net-mvc vb.net kentico document-types