我有一个我在问题列表中使用的联系人列表(查找)。当我删除联系人列表中的联系人时,我已经创建的问题也消失了。
有人可以帮忙吗?
答案 0 :(得分:0)
有人可以告诉我如何建立一个 获取联系人的自定义查找字段 来自我的联系人列表?
从SPField继承。创建一个继承自BaseFieldControl的字段控件。我认为您可以使用Microsoft.SharePoint.WebControls.LookupField呈现下拉列表,您可以在其中选择值。
另一种(可能更简单)的方法是使用事件接收器并将选定的值复制到文本或计算字段。
我不确定在你的情况下这些是否是更好的方法。为什么必须从联系人列表中删除联系人?
答案 1 :(得分:0)
如果我正确理解您的初步问题,您会遇到以下情况:
联系人列表 - 联系A. - 联系B. - 联系C
问题清单 - 问题A(查找联系人A) - 问题B(查找联系人B) - 问题C(查找联系人C)
当您从联系人列表中删除“联系人A”时,问题A不包含空值(或下拉列表中的空白选项),即使您尚未编辑“问题”,“联系人A”也是如此“删除后”联系A“。
现在看起来像:
联系人列表 - 联系B. - 联系C
问题清单 - 问题A(查找) - 问题B(查找联系人B) - 问题C(查找联系人C)
假设这是正确的。您已经描述了SharePoint中查找列表的默认行为。列表下拉列表在需要时动态构建,并将对原始列表的引用存储为值>
如果你要在“问题A”中查询查询字段的值,你会在删除之前得到类似“1#;联系A”的内容,之后会得到“null”。
您无法使用默认查找字段调整此行为。
选择字段可以解决您的问题,具体取决于添加/删除联系人的频率以及联系人列表的大小。
选择字段只是一个带有输入预定义选项的文本字段。您可以使用事件处理程序来更新该字段的可用选项。
另一种方法是创建自己的查找字段(从默认值继承)。将字符串属性添加到字段,该字段在选中时从默认查找中复制数据。然后,您将更改渲染代码以在视图上显示添加的属性,并在创建/编辑时显示修改后的下拉列表(显示不可用/已删除的值)。
IMO,这是默认查找字段的一大缺点。