SharePoint中的"用户或用户组"栏,当选择了"允许多重选择"后,用对象模型SPListItemCollection["栏名"]获得到的是SPFieldUserValueCollection的对象:
SPFieldUserValueCollection users = SPListItem[
"栏名"]
as SPFieldUserValueCollection;
如果将SPListItemCollection["栏名"]输入字符串的话,是"用户ID;#用户Name",
一 为栏赋值有这几种方式,
SPListItem["栏名"] = SPUser实例或者SPGroup实例,但是不能赋SPUserCollection;
SPListItem["栏名"] = "用户ID;#用户Name;#用户ID;#用户Name......";
SPListItem["栏名"] = SPFieldUserValueCollection实例;(当栏设置允许多重选择为否时,赋的值都是集合中的第一个)
SPListItem["栏名"] = SPFieldUserValue实例;
二 获取栏的值
当栏设置为"允许多重选择"为否时,不管用SPFieldUserValueCollection userValues=item["栏名"] as SPFieldUserValueCollection;还是SPFieldUserValue userValue = item["栏名"] as SPFieldUserValue;得到的值都是Null;
如果想判断是否选择了"允许多重选择",可以先查看SPFieldUser字段的AllowMutipleValues属性.不过真麻烦.
实际上在该字段在"允许多重选择"为否时,字段类型是string,为是时,字段类型是SPFieldUserValueCollection.
本文出自 “大李水手” 博客,请务必保留此出处http://iamlishuchao.blog.51cto.com/1189601/271853
理解SharePoint中用户或用户组栏的多重选择与赋值方式
本文深入探讨了在SharePoint中使用对象模型进行用户或用户组栏操作时的多重选择特性及其赋值方法。详细解释了如何通过对象模型获取和设置用户ID和用户名,以及在不同选择情况下(允许多重选择与否)的赋值逻辑。同时指出在设置允许多重选择为否时,字段类型会变为string,为是时则为SPFieldUserValueCollection。
2259

被折叠的 条评论
为什么被折叠?



