前言

最近系统从2010升级至2013,有自定义模板页。突然发现在列表中切换不了视图,让我很费解。

我尝试过以下解决方案:

  1. 去掉自定义css
  2. 去掉自定义js
  3. 禁用所有自定义功能

结果都没有效还是一样的不出来。甚至我重新生成了新的模板页。

原因

后来我发现就算在设计管理器中创建新的 空白HTML模板页还是一样的会有问题。真正的原因是因为模板页中缺少一段必要代码。就算是系统自带的Seattle默认页在经过修改了HTML模板页然后重新生成后一样会有问题。所以我判断这是一个设计缺陷

默认情况下生成的空白html模板页的PlaceHolderLeftNavBar是这样的

  <!--SPM:<SharePoint:AjaxDelta id="DeltaPlaceHolderLeftNavBar" Visible="false" class="ms-core-navigation ms-belltown-sideNavDelta" BlockElement="true" runat="server">-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderLeftNavBar" Visible="false" runat="server">-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderLeftNavBarTop" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderQuickLaunchTop" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderLeftNavBarDataSource" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderCalendarNavigator" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderLeftActions" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderQuickLaunchBottom" Visible="false" runat="server"/>--> <!--SPM:</asp:ContentPlaceHolder>-->
<!--SPM:</SharePoint:AjaxDelta>-->

  效果:

  

缺少这一段代码:

<!--SPM:<SharePoint:SPNavigationManager id="TreeViewNavigationManagerV4" runat="server"	ContainedControl="TreeView" CssClass="ms-tv-box">-->
<!--SPM:<SharePoint:DelegateControl runat="server" ControlId="TreeViewAndDataSource">-->
<!--SPM:</SharePoint:DelegateControl>-->
<!--SPM:</SharePoint:SPNavigationManager>-->

  

解决方案

将缺失的代码插入

<!--SPM:<SharePoint:AjaxDelta id="DeltaPlaceHolderLeftNavBar" Visible="false" class="ms-core-navigation ms-belltown-sideNavDelta" BlockElement="true" runat="server">-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderLeftNavBar" Visible="false" runat="server">-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderLeftNavBarTop" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderQuickLaunchTop" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderLeftNavBarDataSource" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderCalendarNavigator" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderLeftActions" Visible="false" runat="server"/>-->
<!--SPM:<asp:ContentPlaceHolder id="PlaceHolderQuickLaunchBottom" Visible="false" runat="server"/>--> <!--就是这里的问题-->
<!--SPM:<SharePoint:SPNavigationManager id="TreeViewNavigationManagerV4" runat="server" ContainedControl="TreeView" CssClass="ms-tv-box">-->
<!--SPM:<SharePoint:DelegateControl runat="server" ControlId="TreeViewAndDataSource">-->
<!--SPM:</SharePoint:DelegateControl>-->
<!--SPM:</SharePoint:SPNavigationManager>--> <!--SPM:</asp:ContentPlaceHolder>-->
<!--SPM:</SharePoint:AjaxDelta>-->

这才是我们想要的:

总结

没什么总结,总结就是我最近越来越恨2013的设计者了!!!。。。。。。

SharePoint 2013 自定义模板页后在列表里修改不了视图的更多相关文章

  1. SharePoint 2013 自定义翻页显示列表项

    项目需求:自定义开发一个能分页显示列表项的小部件,允许左右翻页,能根据用户权限来显示管理链接等. 效果如下: 技术要求:使用sharepoint rest API 来获取列表项,这样性能高,能够快速响 ...

  2. 浅谈SharePoint 2013 站点模板开发 转载自http://www.cnblogs.com/jianyus/p/3511550.html

    一直以来所接触的SharePoint开发,都是Designer配合Visual Studio,前者设计页面,后者开发功能,相互合作,完成SharePoint网站开发.直到SharePoint 2013 ...

  3. 浅谈SharePoint 2013 站点模板开发

    一直以来所接触的SharePoint开发,都是Designer配合Visual Studio,前者设计页面,后者开发功能,相互合作,完成SharePoint网站开发.直到SharePoint 2013 ...

  4. 每日学习心得:SharePoint 2013 自定义列表项添加Callout菜单项、文档关注、SharePoint服务端对象模型查询

    前言: 前一段时间一直都比较忙,没有什么时间进行总结,刚好节前项目上线,同时趁着放假可以好好的对之前遇到的一些问题进行总结.主要内容有使用SharePoint服务端对象模型进行查询.为SharePoi ...

  5. SharePoint 2013 自定义扩展菜单

    在对SharePoint进行开发或者功能扩展的时候,经常需要对一些默认的菜单进行扩展,以使我们开发的东西更适合SharePoint本身的样式.SharePoint的各种功能菜单,像网站设置.Ribbo ...

  6. SharePoint 2013 自定义扩展菜单(二)

    接博文<SharePoint 2013 自定义扩展菜单>,多加了几个例子,方便大家理解. 例七 列表设置菜单扩展(listedit.aspx) 扩展效果 XML描述 <CustomA ...

  7. 【FBA】SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用

    //http://www.cnblogs.com/OceanEyes/p/custom-provider-in-sharepoint-2013-fba-authentication.html 由于项目 ...

  8. [FBA]SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用

    //http://tech.ddvip.com/2014-05/1401197453210723.html 由于项目的需要,登录SharePoint Application的用户将从一个统一平台中获取 ...

  9. SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用

    由于项目的需要,登录SharePoint Application的用户将从一个统一平台中获取,而不是从Domain中获取,所以需要对SharePoint Application的身份验证(Claims ...

随机推荐

  1. Android 自定义View实现多行RadioGroup (MultiLineRadioGroup)

    一.项目概况 我们都知道RadioGroup可以实现选择框,但它有一个局限性,由于它是继承自LinearLayout的,所以只能有一个方向,横向或者纵向:但有时候仅一行的RadioGroup并不能满足 ...

  2. spring 启动流程

    AbstractApplicationContext 分析 启动流程 // Prepare this context for refreshing.prepareRefresh(); 1. // In ...

  3. sql server版本

    10.00.1600 :SQL 2008 10.50.1600:SQL 2008 R2 10.50.2500:SQL 2008 R2 SP1

  4. zmq 学习笔记

    0. PUB/SUB, XPUB/XSUB filtering happens at publisher sides when sockets are using a connected protoc ...

  5. Android使用SurfaceView实现墨迹天气的风车效果

    SurfaceView也是继承自View,它和我们以前接触到的View(Button.TextView等)最大的不同是,SurfaceView可以有一个单独的线程进行绘制,这个线程区别于UI线程(主线 ...

  6. MyBatis知多少(1)

    SQL (Structured Query Language,结构化查询语言)己经存在很长一段时间了.自从第一次提出“数据可以被规范化为一组相互关联的表”这样的思想以来,已经超过35年了. 从那时起, ...

  7. 哇塞,原来自己写 Google Chrome 浏览器扩展(插件)这么容易!

    1. 首先新建一个记事本,命名为 manifest.json,这是写 Google Chrome 浏览器扩展必须的文件 { "manifest_version": 2, " ...

  8. ArcGIS地图打印设置

    1.需求:客户自己开发的Engine程序,调用的是LayoutControl,需要连接大型绘图仪进行出图. 业务流程是先框选要打印的地图范围,该范围是自定义大小,框选完成之后进行预览,然后选择打印输出 ...

  9. LuaInterface简介

    Lua是一种很好的扩展性语言,Lua解释器被设计成一个很容易嵌入到宿主程序的库.LuaInterface则用于实现Lua和CLR的混合编程. (一)Lua from the CLR 测试环境:在VS2 ...

  10. AssetBundle系列——游戏资源打包(二)

    本篇接着上一篇.上篇中说到的4步的代码分别如下所示: (1)将资源打包成assetbundle,并放到自定目录下 using UnityEditor; using UnityEngine; using ...