日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

从PeopleEditor控件中取出多用户并更新到列表

發布時間:2023/11/29 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从PeopleEditor控件中取出多用户并更新到列表 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

如果一個列表中有一個字段類型為用戶或用戶組,并且設置為用戶,允許多值的話,那么用代碼進行更新的時候就必須將這個字段的值賦成SPFieldUserValueCollection類型,以下代碼即為從PeopleEditor控件中取出多個用戶并返回一個SPFieldUserValueCollection類型的值:

1 /// <summary>
2 /// 從人員選取器中獲取多用戶并返回SPFieldUserValueCollection類型
3 /// </summary>
4 /// <param name="pe">人員選取器</param>
5 /// <returns></returns> ToString:user1ID;#user1Name;#user2ID;#user2Name
6 public SPFieldUserValueCollection GetUsersValue(PeopleEditor pe)
7 {
8 SPFieldUserValueCollection result = new SPFieldUserValueCollection();
9 using (SPSite mySite = new SPSite(SPContext.Current.Site.ID))
10 {
11 using (SPWeb myWeb = mySite.RootWeb)
12 {
13 if (pe.CommaSeparatedAccounts != "")
14 {
15 foreach (string item in pe.CommaSeparatedAccounts.Split(','))
16 {
17 SPUser u = myWeb.EnsureUser(item);
18 SPFieldUserValue uservalue = new SPFieldUserValue(myWeb, u.ID, u.Name);
19 result.Add(uservalue);
20 }
21 }
22 }
23 }
24 return result;
25 }

更新的時候直接將item["user"]=GetUsersValue(pe);然后Update一下即可。

另外如果需要通過代碼將多用戶賦值給PeopleEditor控件,只需要設置PeopleEditor控件的CommaSeparatedAccounts屬性為User1Name,User2Name這樣即可,即為每個用戶的DisplayName,然后之間用“,”隔開就可以了,代碼如下:

1 pe.CommaSeparatedAccounts="User1Name,User2Name";


?

轉載于:https://www.cnblogs.com/leolis/archive/2012/01/05/2313786.html

總結

以上是生活随笔為你收集整理的从PeopleEditor控件中取出多用户并更新到列表的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。