我在MVC中创建了一个Sitefinity小部件(2个视图,一个控制器和一个模型),它按预期工作。
将小部件拖到页面后,除了编辑菜单。编辑视图中的所有字段都是文本输入,我不知道如何影响它。
我的一个字段应该是一个带有Enum值的下拉列表 - 这个枚举列出了我的两个视图的名称,并由控制器用来选择我要渲染的那个。当我打开窗口小部件的编辑视图时,它默认为我的枚举中的第一个值,并且所有内容都正确呈现,但我希望这是一个下拉菜单而不是文本输入,需要用户的魔法字符串知识。
我的另一个字段选择要链接的页面,该页面在我的窗口小部件内的表单的action属性中使用。这又一次有效,但它只是一个字符串文本字段,我想使用内置的Sitefinity页面选择器,如果可能的话,使用许多“本机”小部件。
所以短版本是:在将小部件添加到页面后,在哪里/如何影响小部件的“编辑”视图中显示的输入类型?
答案 0 :(得分:3)
就Sitefinity而言,当您编辑窗口小部件设置时,视图是“窗口小部件设计器”。
使用羽毛时的官方文档:https://docs.sitefinity.com/feather-create-custom-designer-views
非羽毛用户的文档:https://docs.sitefinity.com/for-developers-create-a-simple-widget-designer
在您的情况下,如果您想使用下拉菜单而不是输入的简单示例:
DesignerView.Simple.cshtml
文件夹View/<ControllerName>
<select sf-model="properties.Content.PropertyValue"><option>abc</option><option>xyz</option></select>
其中Content
是您的媒体资源名称<强>链接强>: