【问题标题】:webpart value gone after page reload页面重新加载后 webpart 值消失
【发布时间】:2015-03-17 17:51:00
【问题描述】:

首先我使用的是共享点, 基本上我的目标很简单,我想做的是更新我的 webpart 属性并将其用于将来。

string _SavedCondition;
[WebBrowsable(false),
Category("New"),
Personalizable(PersonalizationScope.Shared),
WebDisplayName("ConditionStore")]
public string SavedCondition
{
    get;
    set;           

}

上面是我的webpart控件

我有一个按钮,当我点击我的按钮时,它会更新我的控件的值

我用下面的代码更新了

 this.WebPart.SavedCondition = "Admin";

好的,这是我的问题,当我单击按钮时,我的值会更新并能够显示,但是当我关闭浏览器并再次重定向到页面时,该值消失了。

根据 sharepoint UI 实践,一旦 Web 部件属性发生更改,用户需要单击应用保存。但是我怎么能以编程方式做到这一点?如果我需要提供更多信息或任何不清楚的信息,请告诉我。

【问题讨论】:

    标签: c# asp.net sharepoint-2013


    【解决方案1】:

    经过长期的研究,我终于做到了

      SPWeb web = SPContext.Current.Web;
                    SPFile file = web.GetFile(<PageURL>);
                    SPLimitedWebPartManager manager = file.GetLimitedWebPartManager(PersonalizationScope.Shared);                
                    web.AllowUnsafeUpdates = true;
                    CustomWebPart webPart = (CustomWebPart)manager.WebParts[this.ID];
      //saved condition is my properties, u can find it from my questions above
                    webPart.SavedCondition = "Something"; 
                    manager.SaveChanges(webPart);
                    web.AllowUnsafeUpdates = false;
    

    当我执行 AllowUnsafeUpdates 和 SaveChanges 时,我的数据存储在 webpart =)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-12
      • 1970-01-01
      • 2013-05-22
      • 1970-01-01
      • 2021-01-17
      • 1970-01-01
      • 2015-09-05
      相关资源
      最近更新 更多