La proprietà della web part personalizzata di Sharepoint non viene visualizzata nella casella degli strumenti

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

Domanda

Ho definito una proprietà booleana come segue:

 [Browsable(true), Category("Display"), DefaultValue(false),
  WebPartStorage(Storage.Shared), FriendlyName("Obey Workflow"),
  Description("")]
  public bool ObeyWorkflow { get; set; }

Mi aspetto che venga visualizzato come una casella di controllo nella casella degli strumenti delle proprietà della webpart, tuttavia non viene visualizzato. La mia web part deriva dalla classe base di Sharepoint WebPart.

È stato utile?

Soluzione

Sei sulla strada giusta. Devi solo usare attributi diversi.

[Personalizable(PersonalizationScope.Shared)]
[WebBrowsable(true)]
[Category("Display")]
[WebDisplayName("Obey Workflow")]  
[Description("")]  
public bool ObeyWorkflow { get; set; }

Altri suggerimenti

@Jason, hai ragione. La sintassi "Sfogliabile", e "Categoria" sono specifici di Sharepoint 2003. Per SharePoint 2007, è " WebBrowsable " ;, e " SPWebCategoryName " rispettivamente.

DefaultValue (false) è anche specifico di SharePoint 2003.

L'equivalente nel 2007, per quanto ne so, è dichiararlo inizialmente in anticipo, in questo modo:

    private string _strMainFolder = "Reports"; //Here is the default value

    [WebBrowsable(true)]
    [WebDisplayName("SharePoint List Name")]
    [SPWebCategoryName("SharePoint List Name Settings")]
    [WebPartStorage(Storage.Shared)]
    [WebDescription("You would put the description here.")]
    [Personalizable(PersonalizationScope.Shared)]
    public string strMainFolder
    {
        get { return _strMainFolder; }
        set { _strMainFolder = value; }
    }

penso che sia WebBrowsable (true) invece di Browsable(true)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top