Sharepoint: le meilleur moyen d’afficher des listes de contenu autre que Sharepoint avec une interface utilisateur «compatible»?

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

Question

J'ai créé un composant WebPart pour Sharepoint qui récupère les données d'un service externe. J'aimerais afficher les éléments de manière compatible avec Sharepoint (s'intègre parfaitement dans son environnement.)

Je suis au courant du " DataFormWebPart " mais était incapable d'en faire fonctionner un correctement. Cela nécessite une source de données valide et je ne pouvais pas en créer une à partir des résultats d'un appel de service Web ... Une partie du problème vient du fait que mes wrappers de service Web n'exposent pas les informations de retour XML, mais que j'ai un tas d'objets désérialisés. . Il ne semble pas y avoir de moyen facile de transformer des objets réels en source de données ou d’alimenter un fichier "générique". source de données à partir de données d'objet.

Je pourrais utiliser un SPGridView pour obtenir la même interface utilisateur, mais le contrôle de grille n'a pas beaucoup d'incidences intelligentes - et il force chaque champ dans sa propre colonne. Je préférerais que chaque élément de la liste apparaisse sous la forme d'une cellule unique avec un rendu complexe (par exemple, la façon dont StackOverflow affiche ses listes de questions.) J'aimerais également obtenir le plus possible l'interface utilisateur standard de Sharepoint, telle que les contrôles de tri, de filtrage et de pagination.

Alors, d’abord: est-ce que quelqu'un ici a écrit un contrôle Sharepoint qui fait cela, et si oui, avez-vous un exemple de code à partager? Sinon, est-ce que je néglige un contrôle utile, qu'il soit fourni par MS ou disponible dans une bibliothèque externe?

Merci! Steve

Était-ce utile?

La solution

  

Sharepoint: le meilleur moyen d’afficher des listes   de contenu non-SharePoint avec   & # 8220; compatible & # 8221; UI?

Jetez un coup d'œil aux contrôles Web SharePoint intégrés:

Espace de noms Microsoft.SharePoint.WebControls

Il contient tous les contrôles utilisés dans SharePoint. Je vous en dirai plus, mais la documentation est très complète.

Autres conseils

Le problème avec SharePoint est qu’il existe différentes façons de procéder. Si vos données ne changent pas trop souvent et ne sont pas trop volumineuses, il peut être intéressant de les saisir dans une liste pour les afficher. Si vous disposez de la licence Enterprise, il peut être intéressant d’intégrer vos données dans le centre de distribution de logiciels et de les utiliser à cet emplacement. vous devrez peut-être convertir les objets en XML ou utiliser les objets sérialisés avec le WebPart XML pour l'affichage. Cela pose toujours le problème du rendu personnalisé avec XSLT.

Voici un excellent article qui explique comment configurer les connexions BDC aux services Web à l'aide de l'éditeur de définition BDC:

Création d'une connexion de service Web à l'aide de l'éditeur de définition de catalogue de données métiers http://msdn.microsoft.com/en-us/library/bb737887. aspx

Le meilleur moyen de réaliser cette OMI est de créer un composant WebPart. En tant que composant WebPart, l'interface utilisateur sera automatiquement rendue comme étant le thème utilisé par le site (à moins que vous ne le remplaciez) et il pourra être placé n'importe où par quiconque disposant de privilèges administrateur.

Vous pouvez créer un composant WebPart personnalisé et utiliser un SPGridView. Vous dites que vous n'aimez pas cela, car chaque champ est forcé dans sa propre colonne, mais ce n'est pas vrai. Vous pouvez créer un modèle (ITemplate) pour chaque colonne et personnaliser entièrement son contenu, exactement comme si vous utilisiez un GridView ASP.Net normal. En utilisant cette approche, j’ai ajouté le petit " Nouveau " images juste à côté du titre d'un élément de la liste, comme le fait SharePoint lui-même.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top