2009-04-28 9 views
0

J'ai une liste de contacts que j'utilise dans une liste de problèmes (recherche). Lorsque je supprime le contact dans la liste de contacts est également parti dans mon problème déjà créé.Supprimer l'élément de la liste Sharepoint

Quelqu'un peut-il aider?

Répondre

0

quelqu'un peut me dire comment construire un champ de recherche personnalisé qui obtenir des contacts de ma liste de contacts?

Hérite de SPField. Créez un contrôle de champ qui hérite de BaseFieldControl. Je pense que vous pouvez utiliser Microsoft.SharePoint.WebControls.LookupField pour afficher une liste déroulante dans laquelle vous pouvez sélectionner la valeur.

Une autre approche (peut-être plus simple) consisterait à utiliser un récepteur d'événements et à copier la valeur sélectionnée dans un champ texte ou calculé.

Je ne suis pas sûr si l'une de ces approches est la meilleure dans votre cas. Pourquoi devez-vous supprimer le contact de la liste de contacts?

0

Si je comprends bien votre question initiale que vous avez le scénario suivant:

Liste de contacts - contacter A - Contact B - Contact C

question Liste - question A (recherche de contact a) - numéro B (recherche contact B) - numéro C (recherche à contacter C)

Lorsque vous supprimez "contact a" de la la liste des contacts, le numéro a ne contient une valeur nULL val ue (ou une sélection vide dans la liste déroulante) où "contact A" utilisé pour être même si vous n'avez pas édité "numéro A" après la suppression de "contact A".

Il ressemble maintenant à:

Liste des contacts - Contact B - Contact C

question Liste - numéro A (recherche à) - numéro B (recherche Contact B) - émission C (recherche de contact C)

En supposant que c'est correct. Vous avez décrit le comportement par défaut des listes de recherche dans SharePoint. Les listes déroulantes de liste sont construites dynamiquement si nécessaire et stockent une référence à la liste originale comme valeur>

Si vous deviez interroger la valeur du champ de recherche dans "numéro A" vous obtiendriez quelque chose comme "1 #; Un "avant la suppression et" null "après.

Vous ne pouvez pas ajuster ce comportement avec le champ de recherche par défaut.

Le champ de choix peut résoudre votre problème en fonction de la fréquence à laquelle les contacts sont ajoutés/supprimés et de la taille de la liste de contacts.

Le champ de choix est simplement un champ de texte avec des options prédéfinies pour l'entrée. Vous pouvez utiliser des gestionnaires d'événements pour mettre à jour les choix disponibles pour le champ.

L'alternative est de créer votre propre champ de recherche (héritant de la valeur par défaut).Ajoutez une propriété de chaîne au champ qui copie les données de la recherche par défaut lorsqu'elle est sélectionnée. Vous devez ensuite modifier le code de rendu pour afficher la propriété ajoutée à l'affichage et une liste déroulante modifiée (affichant les valeurs indisponibles/supprimées) lors de la création/modification.

IMO, ceci est un gros inconvénient du champ de recherche par défaut.

Questions connexes