2011-08-23 36 views
10

我已經創建了包含一些自定義字段的SPList實例。但是,當我在sharepoint(默認視圖)中查看此列表時,只顯示標題列。如何將我的列添加到我新創建的列表的默認視圖中?將字段添加到SPList默認視圖

我想:

list.Fields.Add("Foo", SPFieldType.Text, true): 
list.View[0].ViewFields.Add("Foo"); 
list.View[0].Update(); 
list.Update(); 

但是行不通。

回答

23

它不會工作,因爲list.view[0]返回一個新的 SPView在每個呼叫;見here。在你的情況下,你可以在新實例上調用update()

要使其工作,請將視圖存儲在變量中並將該字段添加到該視圖。 (實例是默認視圖,但list.View[0]也應該工作)

SPView view = list.DefaultView; 
view.ViewFields.Add("Foo"); 
view.Update(); 
+0

沒問題,我已經與這個太掙扎自己。 – Dribbel

+0

謝謝,它爲我工作:) –

+3

呃現在殺了我的SharePoint!完全打破財產觀念的方式。 – Nacht