我正在尝试扩展内置的选择字段类型以包含另一条数据:正确答案。有了这个,用户将能够直接在 Sharepoint 中创建自己的测试,而不必使用 InfoPath 或其他一些复杂的解决方案。我希望只继承现有的 SPFieldChoice 类型并添加一个自定义属性来保存一个整数,该整数表示输入的选项中的正确答案。
我有一个继承自 SPFieldChoice 的 FieldTestQuestion 类以及一个继承自 RadioButtonChoiceField 的非常基本的 TestQuestionFieldControl 类。我的 fldtypes_TestQuestionField.xml 文件:
<FieldTypes>
<FieldType>
<Field Name="TypeName">TestQuestion</Field>
<Field Name="ParentType">Choice</Field>
<Field Name="TypeDisplayName">Test Question (Multiple choice)</Field>
<Field Name="TypeShortDescription">Test Question (Multiple choice)</Field>
<Field Name="UserCreatable">TRUE</Field>
<Field Name="ShowInColumnTemplateCreate">TRUE</Field>
<Field Name="FieldTypeClass">MyCustomFieldTypes.FieldTestQuestion,MyCustomFieldTypes, Version=1.0.0.0, Culture=neutral, PublicKeyToken=****</Field>
<PropertySchema>
<Fields>
<Field Name="CorrectAnswer" DisplayName="Correct answer (line number)" Type="Integer">
<Default></Default>
</Field>
</Fields>
</PropertySchema>
</FieldType>
</FieldTypes>
不幸的是,当我尝试添加这种类型的列时,这就是呈现的内容:(
来源:mudman.us)
没有添加选项的选项,就像选择字段类型一样:(
来源:mudman.us)
我需要在我的 fldTypes_.xml 中添加什么来告诉 Sharepoint (a) 使用 Choice 列的现有自定义属性并添加我指定的额外属性或 (b) 专门定义多行文本自定义属性?