2010-03-11 87 views
0

我试图创建一个类似于查询列的自定义字段类型只是我的过滤查找列。它工作正常,但我想实现像查找列一样的功能,我的意思是:Sharepoint查找列如何存储其值?

例如lookup列有一些列表的标题,因此它将其值存储为

SPListiem.ID#;标题....但它只显示标题,当我们选择或编辑它的值。

我使用列表框和做

listbox.Items.Add(职称);

但是,如何获得Id也特别隐藏用户喜欢查找列没有....意味着我可以这样做... listbox.Items.Add(title +“#;”+ SPListitem.ID)。 ..

,但我不想这样....

任何想法如何实现这一目标?

回答

1

您的解决方案

事实上,它存储的值lookupId所; #LookupValue

  1. 使用SPFieldLookupValue(或SPFIeldLookupValueCollection进行多次查找)构造函数,然后获得SPFieldLookupValue.LookupId和SPFieldLookupValue.LookupValue属性。
  2. 然后,将项目添加到列表框与 ID,使用

    listbox.Items.Add(new ListItem(lookupValue.LookupValue, lookupValue.LookupId)); 
    

    那么用户将看到LookupValue,但 你将有一个办法让 coresponding ID。

已经存在的解决方案

顺便说一句,已经有可用SharePoint filtered lookup field其中,如果你愿意,你可以使用。