2009-03-05 58 views
13

如下我定義了一個布爾屬性:的Sharepoint自定義Web部件屬性不會在工具箱中顯示

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

我期待它呈現爲在Web部件的屬性工具箱中的複選框,但是它不沒有出現。我的Web部件來自Sharepoint WebPart基類。

回答

21

你是在正確的軌道上。你只需要使用不同的屬性。

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

謝謝。我花了整整一天的時間來解決這個問題。 – kjv 2009-03-07 16:42:09

1

,我認爲它的WebBrowsable(true)代替Browsable(true)

+0

我已經改變,並沒有幫助。 – kjv 2009-03-06 18:14:23

5

@Jason,你說的沒錯。語法「Browsable」和「Category」是Sharepoint 2003特有的。對於SharePoint 2007,它分別是「WebBrowsable」和「SPWebCategoryName」。

DefaultValue(false)也是特定於SharePoint 2003的。

在2007年的等效,因爲據我所知,是先事先聲明,就像這樣:

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; } 
    } 
+0

很好的工作,謝謝你! – Gohyu 2016-11-21 15:22:24

相關問題