根据另一个列表项填充列表项

时间:2009-12-08 15:42:55

标签: sharepoint sharepoint-2007

我们有一个用户选择部门的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();

2 个答案:

答案 0 :(得分:2)

我在评论中问过您,但这些案例的解决方案通常是Custom List Field Iterators来覆盖您实际的“用户”控件,或者您还可以在渲染时添加custom site column and hook it to your list动态过滤其内容。

答案 1 :(得分:0)

以后你想用那个下拉菜做什么?存储选择?如果是这样,您最好创建自定义字段类型/字段控制,其中包括部门选择器和部门更改时更新的第二个选择。然后将选择保存为字段的值。

当然,最好的方法是通过AJAX(jQuery),因此当部门更改时页面不需要刷新。