在停用该功能时从sharepoint页面删除特定的Web部件

时间:2011-02-04 11:19:32

标签: sharepoint

以下是我在FeatureDeactivating事件处理程序中添加的代码段。我无法获得删除System.Web.UI.WebControls.WebParts类型的webpart的解决方案。

try
                {
                    SPSite mysite = properties.Feature.Parent as SPSite;
                    SPWeb myweb = mysite.RootWeb;
                    SPLimitedWebPartManager manager = myweb.GetLimitedWebPartManager("default.aspx", System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared);

                    using (mysite)
                    {
                        using (myweb)
                        {
                            SPLimitedWebPartCollection webparts = manager.WebParts;

                            for (int k = 0; k < webparts.Count; k++)
                            {
                                //get reference to webpart
                                System.Web.UI.WebControls.WebParts.WebPart wp = webparts[k];

                                //check webpart Title to find webpart which is to be removed
                                if (wp.Title == "Profile Edit")
                                {
                                    WHAT CODE SNIPPET HAS TO BE INSERTED HERE TO DELETE THE WEBPART FROM THE PAGE

                                }
                            }
                        }
                    }

                }
                catch (Exception ex)
                {
                    eventlog.WriteEntry(String.Format("Error de-activating add tab feature {0} : ", ex.Message));
                }

1 个答案:

答案 0 :(得分:3)

使用以下代码

manager.DeleteWebPart(wp);

manager.Dispose();
web.Update();
相关问题