根据另一个列表项目填充列表项目
问题描述:
我们有一个用户选择部门的UI。它进入一个List项目。我们为每个部门分别使用SharePoint用户组。根据另一个列表项目填充列表项目
我想填充列表项中的某个SharePoint组中的用户。所以现在基于选择的部门,我需要填充列表项。
请帮我做这件事。我可以用得到的一组中的所有用户:
DropDownList ddl = new DropDownList();
ArrayList al = new ArrayList();
SPWeb web = SPContext.Current.Web;
SPGroupCollection grpCln = web.Groups;
foreach (SPGroup grp in grpCln)
{
if (grp.Name == "Viewers")
{
foreach (SPUser user in grp.Users)
{
al.Add(user.Name);
}
}
}
ddl.DataSource = al;
ddl.DataBind();
答
我问你的意见,但解决这些案件通常是Custom List Field Iterators覆盖您的实际“用户”控制,或者你也可以添加一个custom site column and hook it to your list在渲染时动态过滤其内容。
答
你以后想用那个下拉菜单怎么样?存储选择?如果是这样,您最好创建一个自定义字段类型/ fieldcontrol,其中包含部门选择器和部门更改时更新的第二个选择。然后将选择保存为字段的值。
当然最好的方法是通过AJAX(jQuery),因此当部门更改时不需要刷新页面。
恩典,在编辑模式?比如说,你编辑列表项并在可用的字段中填写你有一个名为“用户”的字段,由当前部门过滤? – 2009-12-08 16:18:09
是的,你是对的,在用户列表的编辑模式期间,应根据部门 – Pradeep007 2009-12-08 16:23:47