2010-10-12 81 views
1

我无法以编程方式从用户视图隐藏SPField。以编程方式隐藏SPField

我试过的明显的方式:

SPField newField = web.Site.RotWeb.Fields.GetField("order"); 
string newField = list.Fields.Add(newField); 
list.Fields["order"].Hidden = true; // <--- exception: read-only field 
list.Update(); 

例外称字段只读,所以我不能修改它。

此字段添加在代码中,因此它将从字段集合中进行解除操作。除了用户界面之外,我怎样才能隐藏该字段?

谢谢。

回答

2

首先,尝试将ReadOnlyField设置为false(在设置Hidden后返回true)。

如果这样不起作用,请检查CanToggleHidden的值。如果CanToggleHidden为假,您可以:

+0

CanToggleHidden with reflection方法奏效。谢谢。 – BeraCim 2010-10-13 01:48:53

0

没关系,我看到你正在添加该字段。尝试在创建该字段后获取新的实例,然后在更新列表之前应用隐藏的atttribute。

相关问题