Gee*_*vdC 4 sharepoint ribbon sharepoint-2010 sharepoint-clientobject
我创建了一个sharepoint页面,其中包含xslt webpart和与该问题无关的第二个webpart
当我们添加第二个webpart时,会隐藏功能区栏,您必须单击webpart才能再次显示功能区栏.单击webpart不是我们可以向用户询问的内容,因此我尝试使用xslt listview webpart的上下文始终显示功能区栏.
在搜索此问题时,我发现当您在SharePoint源代码中使用反射器搜索此隐藏的功能区行为时,似乎这是由Microsoft设计的行为,如下例所示:
public override bool Visible {
get {
if (!this.SingleWebPartPresentOnPage)
return false;
else
return base.Visible;
}
}
Run Code Online (Sandbox Code Playgroud)
有同样问题但没有解决方案的人:http://www.glynblogs.com/2011/02/list-view-selector-missing-with-multiple-web-parts-in-sharepoint-2010.html
是否可以使用服务器端代码强制使用功能区栏,或者可以在单击webpart显示功能区栏时调用正在使用的javascript代码?
我认为应该可以使用javascript,因为如果你单击xslt webpart,功能区是可见的,但我无法重现正在执行的代码.
您可以使用JavaScript重新选择XSLTListViewWebPart,再次显示功能区.
$(document).ready(function() {
var target = document.getElementById("MSOZoneCell_WebPartWPQ2");
if(target != null) {
var fakeEvent = new Array();
fakeEvent["target"] = target;
fakeEvent["srcElement"] = target;
WpClick(fakeEvent);
}
});
Run Code Online (Sandbox Code Playgroud)