我想知道我该怎么办呢。
我想更改列表的行为。将列表添加到sharepoint站点后,您可以在列表下方看到“添加新项”。当用户添加新项目时,应将其替换为“编辑项目”
我怎样才能做到这一点?
非常感谢,
答案 0 :(得分:0)
您可以创建一个Web部件,该部件将更改列表工具栏菜单上的可用菜单项。
在您的Web部件代码中,更改CreateChildControl的代码:
protected override void CreateChildControls()
{
if (!_error)
{
try
{
foreach (Control control in this.Page.Controls)
{
ModifyMenu(control);
}
base.CreateChildControls();
}
catch (Exception ex)
{
HandleException(ex);
}
}
}
然后添加一个ModifyMenu函数,它将添加/隐藏您想要的菜单:
private void RemoveNewMenu(Control parentControl)
{
if ((parentControl == null) || (parentControl.Controls.Count == 0))
{
return;
}
foreach (Control childControl in parentControl.Controls)
{
if (childControl.ToString().ToUpper() == typeof(Microsoft.SharePoint.WebControls.NewMenu).ToString().ToUpper())
{
NewMenu newMenu = (NewMenu)childControl;
if (newMenu.GetMenuItem("NewFolder") != null)
{
newMenu.AddMenuItem(<Edit item menu that you want to add>);
newMenu.GetMenuItem(<new item menu that you want to Hide>).Visible = false;
}
break;
}
RemoveNewMenu(childControl);
}
}
答案 1 :(得分:0)
创建CustomAction并将其部署为功能。自定义操作应该是一个应该在特定列表中可见的菜单项,它的操作URL应该是列表编辑表单编辑表单的链接。
使用以下开源项目隐藏其他菜单选项,该项目允许您隐藏列表工具栏中的任何菜单项:
查找工具栏管理器下载。