2015-04-01 8 views
1

J'ai un composant WebPart visuel et j'essaie de définir une valeur unique de propriété personnalisée sur chaque page. Par exemple, j'ai deux pages aspx. Deal.aspx et Fund.aspx. Les deux pages ont la même partie Web utilisée. Lorsque je définis la propriété personnalisée value dans la partie Web de Deal.aspx, la même valeur est reflétée dans la partie Web de la page Fund.aspx. J'ai lu à propos de PersonalizationScope mais cela n'a pas aidé pour mon scénario. Voici la propriété personnalisée que j'ai créée.Définition d'une valeur différente pour la propriété personnalisée Sharepoint du même composant WebPart dans plusieurs pages différentes

public static string ListName; 
    [Category("Extended Settings"), 
    Personalizable(PersonalizationScope.User), 
    WebBrowsable(true), 
    WebDisplayName("Enter List Name"), 
    WebDescription("Please Enter a List Name")] 

    public string _ListName 
    { 
     get { return ListName; } 
     set 
     { 
      // Sample Validation 
      Regex oRegEx = new Regex("[a-zA-Z]+"); 
      if (!oRegEx.IsMatch(value)) 
       throw new Microsoft.SharePoint.WebPartPages. 
        WebPartPageUserException(
        "Please enter alphabeth characters only"); 
      ListName = value; 
     } 
    } 
+0

comment ajoutez-vous les composants Web à ces pages? – Truezplaya

Répondre

0

Le problème ne se trouve pas dans SharePoint ou PersonalizationScope. Ça fonctionne bien. Le problème est dans la propriété statique ListName. Les propriétés statiques sont "partagées" entre toutes les instances de la même classe. Donc, tous vos webparts auront la même valeur là-bas.