我是 sharepoint 开发的新手,我正在尝试修改 Sharepoint 功能区的行为。众所周知,功能区是这样的,当其他内容(例如列表项)获得焦点时,功能区会自动切换到适当的选项卡或选项卡组(例如列表工具选项卡组)。
我想禁用这种不断切换选项卡并使浏览选项卡始终是活动选项卡,除非用户明确单击另一个选项卡。
我尝试在 Usercontrol 的 Page_Load() 中执行以下操作,但它仅在最初加载页面时有效。我究竟做错了什么?更重要的是,如果有的话,我怎么能做对呢?
基本上,我希望有人可以指出当上下文更改和功能区切换时触发的事件,以及我如何连接到该事件并强制功能区切换回浏览选项卡。
protected void Page_Load()
{
string showBrowseTabScript = string.Empty;
showBrowseTabScript = @"
function ShowBrowseTab() {
var ribbon = SP.Ribbon.PageManager.get_instance().get_ribbon();
SelectRibbonTab(""Ribbon.Read"", true);
}
SP.SOD.executeOrDelayUntilScriptLoaded(function() {
var pm = SP.Ribbon.PageManager.get_instance();
pm.add_ribbonInited(function() {
ShowBrowseTab();
});
var ribbon = null;
try
{
ribbon = pm.get_ribbon();
}
catch (e) { }
if (!ribbon) {
if (typeof(_ribbonStartInit) == ""function"")
_ribbonStartInit(_ribbon.initialTabId, false, null);
}
else {
ShowBrowseTab();
}
},
""sp.ribbon.js"");
";
this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "BrowseTabScript", showBrowseTabScript, true);
}