プログラムで発行 Web を作成するコードがあります。1つのことを除いて正常に動作します。デフォルトのドキュメント リストビュー Web パーツを default.aspx ページに追加する必要があります。Web パーツが追加されますが、ドキュメント Web パーツを手動で追加した場合に表示されるように、下部に [ドキュメントの追加] リンクがありません。奇妙なのは、Web パーツを編集すると、リスト ビュー、外観、レイアウト、詳細のセクションがあることです。変更せずに [OK] をクリックし、戻って Web パーツを編集すると、2 つのセクションが追加されます。AJAX オプションとその他。変更せずにもう一度 [OK] をクリックすると、ドキュメントの追加リンクが表示されます。
string pageURL = "default.aspx";
SPFile destFile = newWeb.GetFile(pageURL);
if (destFile.Exists)
{
if (destFile.CheckOutType == SPFile.SPCheckOutType.None)
destFile.CheckOut();
}
else
{
pageURL = "pages/default.aspx";
destFile = newWeb.GetFile(pageURL);
if (destFile.CheckOutType == SPFile.SPCheckOutType.None)
destFile.CheckOut();
}
SPLimitedWebPartManager mgr =
newWeb.GetLimitedWebPartManager(pageURL, PersonalizationScope.Shared);
// add the document library
SPList docLib;
if (!bHasDocuments)
{
// create the document library
Guid docLibGuid = newWeb.Lists.Add(
"Documents",
"",
SPListTemplateType.DocumentLibrary);
docLib = newWeb.Lists[docLibGuid];
}
else
{
docLib = newWeb.Lists["Documents"];
}
docLib.OnQuickLaunch = true;
docLib.Update();
SPDocumentLibrary spDocLib = (SPDocumentLibrary)docLib;
spDocLib.EnableVersioning = true;
spDocLib.EnableMinorVersions = false;
// add the doc lib to the home page
ListViewWebPart wpDoc = new ListViewWebPart();
wpDoc.ZoneID = "TopZone";
wpDoc.ListName = docLib.ID.ToString("B").ToUpper();
wpDoc.ViewGuid = docLib.DefaultView.ID.ToString("B").ToUpper();
// Add the web part
mgr.AddWebPart(wpDoc, wpDoc.ZoneID, 20);
Web パーツに [ドキュメントの追加] リンクを含める方法はありますか?