Est-il possible dans SharePoint pour modifier l'affichage de la bibliothèque de documents sur une base par utilisateur?

StackOverflow https://stackoverflow.com/questions/1834387

Question

Nous utilisons WSS 3.0 et on m'a demandé de voir si les utilisateurs peuvent définir des vues par défaut sur une base par utilisateur. Quelqu'un est-il au courant de toute méthode (ou programatic à travers l'interface graphique lui-même) pour donner aux utilisateurs la possibilité de changer les vues par défaut sur une base par utilisateur? Les 30 minutes de googler et farfouillé dans les menus administratifs se sont avérés infructueux. Sinon, est-ce une caractéristique de MOSS 2007?

Était-ce utile?

La solution

Vous voulez probablement regarder dans le public qui est la fonctionnalité dans MOSS 2007.
Malheureusement, ce n'est pas disponible dans WSS 3.0

Voici un aperçu raisonnable. profils utilisateur et Public dans SharePoint 2007 Ciblage

Autres conseils

Si vous travaillez dans WSS 3.0, vous pouvez modifier ou programme swtich vues en utilisant un webpart qui obtient la ListViewWebPart et modifie la requête ou vue à la volée. Voici quelques exemples de code que je utilise pour filtrer le contenu d'une vue donnée:

    private ListViewWebPart GetListViewWebPart()
    {
        ListViewWebPart webPart = new ListViewWebPart();

        foreach (WebPart wp in WebPartManager.WebParts)
        {
            if (wp.GetType() == typeof(ListViewWebPart))
            {
                webPart = (ListViewWebPart)wp;
            }
        }
        return webPart;
    }


    private void ApplyStrategySecurity(string camlFilter)
    {
        // Get the listview webpart
        ListViewWebPart wp = GetListViewWebPart();

        // Apply the query to the listview
        XmlDocument doc = new XmlDocument();
        doc.LoadXml(wp.ListViewXml);
        if (camlFilter.Length > 0)
        {
            XmlNode queryNode = doc.SelectSingleNode("//Query");
            XmlNode whereNode = queryNode.SelectSingleNode("Where");
            if (whereNode != null)
                queryNode.RemoveChild(whereNode);
            XmlNode newNode = doc.CreateNode(XmlNodeType.Element, "Where", string.Empty);
            newNode.InnerXml = camlFilter;
            queryNode.AppendChild(newNode);
        }
        wp.ListViewXml = doc.OuterXml;
    }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top