我以編程方式將SPFieldLookup
字段添加到列表中。以編程方式將SPFieldLookup添加到列表中?
當我檢查我的列表視圖時,我發現查找字段就好像我從用戶界面添加它,但沒有指定它與項鍊接。
是否有一種方法強制lookupfield以編程方式鏈接到物品?
我以編程方式將SPFieldLookup
字段添加到列表中。以編程方式將SPFieldLookup添加到列表中?
當我檢查我的列表視圖時,我發現查找字段就好像我從用戶界面添加它,但沒有指定它與項鍊接。
是否有一種方法強制lookupfield以編程方式鏈接到物品?
如果您要調配SPFieldLookup字段所在的列表和目標列表,您將遇到問題。因爲SPFieldLookup字段需要通過其GUID來分配目標列表,該GUID在激活功能時動態創建。 而且你不能在你的字段定義中定義這個值,因爲它還不存在。
此問題的解決方案是正常設置「源」列表和目標列表,但源列表中的SPFieldLookup字段除外。
然後,在功能激活事件中,以編程方式添加此查找字段,現在可以完成此操作,因爲您已經(或至少可以找到)目標列表的GUID。
你是否填滿了所有需要的屬性(LookupField,LookupWebId,也許還LookupList)和更新()後?
鏈接是死所以這個答案是不有用。這就是爲什麼在鏈接異地時總結重點的好習慣。 – Amicable 2014-01-09 13:37:45
這是一個很好的片段,我看到並喜歡分享 讓我們假設我們有兩個列表ALIST和bList已創建。 要求是在aList中創建一個查找列,它將查找bList中的值。
SPList aList = web.Lists["aList"];
SPList bList = web.Lists["bList"];
aList.Fields.AddLookup("Lookup", bList.ID, false);
SPFieldLookup fldLookup = aList.Fields["Lookup"] as SPFieldLookup;
fldLookup.LookupField = bList.Fields[SPBuiltInFieldId.Title].InternalName;
fldLookup.Update();
好吧,我發現它 它不能以編程方式來達到的,儘管這將是 可在SharePoint 2010 你可以從SharePoint界面做 感謝 – 2010-03-25 11:02:05