0

我在 MVC 中创建了一个 Sitefinity 小部件(2 个视图、一个控制器和一个模型),它按预期工作。

将小部件拖入页面后的编辑菜单除外。我在编辑视图中的所有字段都是文本输入,我不确定如何影响这一点。

我的一个字段应该是一个下拉列表,其中包含来自枚举的值——这个枚举列出了我的两个视图的名称,控制器使用它来选择我要呈现的视图。当我打开小部件的编辑视图时,它默认为我的枚举中的第一个值,并且一切都正确呈现,但我希望这是一个下拉列表,而不是需要用户知道魔术字符串知识的文本输入。

我的另一个字段选择要链接到的页面,该页面用于我的小部件内表单的 action 属性。这再次有效,但只是一个字符串文本字段,如果可能的话,我想在其中使用许多“本机”小部件使用的内置 Sitefinity 页面选择器。

所以简短的版本是:一旦将小部件添加到页面,我在哪里/如何影响小部件的“编辑”视图中显示的输入类型?

4

1 回答 1

4

就 Sitefinity 而言,当您编辑小部件设置时,视图是“小部件设计器”。

如果您使用 Feather,则使用官方文档:https ://docs.sitefinity.com/feather-create-custom-designer-views

非 Feather 用户的文档:https ://docs.sitefinity.com/for-developers-create-a-simple-widget-designer

如果您想使用下拉列表而不是输入,则在您的情况下的简单示例:

  1. DesignerView.Simple.cshtml在您的View/<ControllerName>文件夹中创建
  2. 添加到此文件中:您的属性名称<select sf-model="properties.Content.PropertyValue"><option>abc</option><option>xyz</option></select>在哪里Content
  3. 如果您将在后端编辑此小部件,它将呈现下拉菜单。

链接

于 2017-08-12T06:00:05.770 回答