2009-07-08 45 views
2

我想弄清楚一個乾淨的方式來隱藏自定義字段類型列表的可用列時,用戶去列表中添加一個新的列。我只希望在激活某個特定功能時顯示該字段類型(該功能可能是爲我的目的而定義的網站,Web或Web應用程序)。如何從新的列選項隱藏自定義字段類型

一個理論(還沒有機會嘗試實現這一點)是我可以在fldtypes_myfield.xml文件中將所有ShowOnListAuthoringPages(和類似)屬性設置爲「false」,然後以編程方式將此值設置爲true當一個給定的功能被激活。

回答

0

因此,它確實看起來確實隱藏字段時間的唯一方法是使用fldtypes_myfield.xml文件中的屬性。 this MSDN page中描述了一系列影響其可見性的屬性。在我的特殊情況下,我最終使用UserCreatable屬性並將其標記爲false。這幾乎意味着字段類型不會顯示在用戶界面的任何位置,因此您需要創建一個功能或某種使用該類型的部署/列表模板。我想這是我們可以期待在SP 2010中進行改進的一個領域(可能還有一個事件接收方的範圍機制,因此它們不必在農場中成爲「全球」)。

0

是否確定能夠在列表中創建列創建列僅激活發佈基礎結構功能中看到發佈字段類型?我有一個MOSS 2007服務器,並根據團隊網站創建網站集(在此發佈基礎結構中未激活),但仍能在「創建網站列」頁面中查看Rich HTML字段。我懷疑Publishing Infrastructure控制這個功能。我會說,你的選擇對此很好。

+0

是的,你說得對。發佈字段類型仍然顯示。不知道我在想什麼。 – 2009-07-09 13:55:59

0

自定義字段類型功能是每個定義的農場範圍,因爲自定義字段類型必須在農場範圍內進行部署。

你不能從用戶那裏「隱藏」它們。列表中的字段基於字段類型(布爾,用戶等)。您可以隱藏字段,而不是基本類型。因此,如果用戶希望創建一個全新的(站點)列,他或她將能夠看到該字段類型。

1

在XML文件中,請設置

<Field Name="UserCreatable">FALSE</Field> 

I'T工作,我

相關問題