Sharepoint Toolpart值未被检索

时间:2012-01-24 15:07:18

标签: c# sharepoint sharepoint-2010 web-parts toolpart

我希望将自定义属性添加到工具部件。我已经能够根据需要添加文本框。我已经能够输入值并在webpart中显示它。

问题是当我编辑webpart时 - 面板弹出但我添加的控件没有填充先前输入的值。见下文:

Why doesn't this work? :(

我完全遵循了on this website的说明 - 无论是我自己还是经验丰富的Sharepoint开发人员同事都无法弄清楚这里发生了什么。

我们认为覆盖SyncChanges()方法会允许这样做 - 似乎它没有,除非我们的实现不正确?

    public override void SyncChanges()
    {
        DemoWebPart wp = (DemoWebPart)this.ParentToolPane.SelectedWebPart;
        urls.Text = wp.ListValue;
    }

我们还使用以下内容为DemoWebPart.cs类的urls属性添加前缀,但无济于事:

    [Browsable(true), Category("Miscellaneous"),
    DefaultValue("Site Names"),
    WebPartStorage(Storage.Shared / Personal / None),
    FriendlyName("URLs"), Description("Text Property")]

(尝试过Storage.Shared,Storage.Personal和Storage.None)。

非常感谢您提供的任何帮助 - 提前感谢!

3 个答案:

答案 0 :(得分:1)

这是我通常用于此类属性的代码:

[Personalizable(PersonalizationScope.Shared)]
[WebBrowsable(true)]
[System.ComponentModel.Category("Custom")]
[WebDisplayName("DisplayNameGoesHere")]
[WebDescription("Type the description of this web property here.")]
public string MyProperty{ get; set; }

我从来没有遇到任何问题。

答案 1 :(得分:1)

如果在中央管理员中添加了Webpart个性化,则仅使用以下内容:

Personalizable(PersonalizationScope.Shared)

如果不是,请完全删除Personalizable属性。不要输入false或none,删除该属性并使用:

WebPartStorage(Storage.Shared)

答案 2 :(得分:0)

建议:

  1. 制作新WP
  2. 并使用此文章http://snahta.blogspot.com/2009/11/webpart-custom-properties.html
  3. 我已经使用了这100次,请尝试一下,它会起作用。

    由于 和Sandeep