以下是我在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));
}
答案 0 :(得分:3)
使用以下代码
manager.DeleteWebPart(wp);
manager.Dispose();
web.Update();