SharePoint 2013 中文站点更新列表字段的标题(Title)不能work

本文讲述SharePoint 2013 中文站点更新列表字段的标题(Title)不能work的解决方案。

笔者的项目环境是个Varation的站点集,有中文和英文两个子站点。

但是下面创建不修改字段标题的代码,修改标题部分在英文站点里面可以工作,但中文站点里面没有效果:

string dateField = myList.Fields.Add("DateFiled", SPFieldType.DateTime, false, false, null);
SPFieldDateTime dateFieldColumn = myList.Fields["DateFiled"] as SPFieldDateTime;
dateFieldColumn.DisplayFormat = SPDateTimeFieldFormatType.DateOnly;
string dateFieldColumnColumnTitle = "Date Field";
if (language == "zh-cn")
{
   dateFieldColumnColumnTitle= "日期字段";
}

dateFieldColumn.Title = dateFieldColumnColumnTitle;
dateFieldColumn.PushChangesToLists = true;                   

dateFieldColumn.Update(true);
dateFieldColumn.TitleResource.SetValueForUICulture(web.UICulture, dateFieldColumnColumnTitle);
dateFieldColumn.TitleResource.Update();
myList.Update();

后来查了下,用reflector 查看  SPField.Title 的set
代码

发现在我这种条件下,刚好不会更新DisplayName,可能是微软的一个Bug 吧。

于是果断自己更新SchemaXml 后终于可以在中文站点正常工作了

string dateField = myList.Fields.Add("DateFiled", SPFieldType.DateTime, false, false, null);
SPFieldDateTime dateFieldColumn = myList.Fields["DateFiled"] as SPFieldDateTime;
dateFieldColumn.DisplayFormat = SPDateTimeFieldFormatType.DateOnly;
string dateFieldColumnColumnTitle = "Date Field";
if (language == "zh-cn")
{
   dateFieldColumnColumnTitle= "日期字段";
}

dateFieldColumn.Title = dateFieldColumnColumnTitle;
dateFieldColumn.PushChangesToLists = true;

dateFieldColumn.SchemaXml = dataFieldColumn.SchemaXml.Replace(
                       "DisplayName=\"DateField\"",
                       string.Format("DisplayName=\"{0}\"", dateFieldColumnColumnTitle));

dateFieldColumn.Update(true);
dateFieldColumn.TitleResource.SetValueForUICulture(web.UICulture, dateFieldColumnColumnTitle);
dateFieldColumn.TitleResource.Update();
myList.Update();

SharePoint 2013 中文站点更新列表字段的标题(Title)不能work

时间: 2024-11-10 02:52:31

SharePoint 2013 中文站点更新列表字段的标题(Title)不能work的相关文章

SharePoint 2013 中代码创建列表查阅项字段

1.首先,打开VS创建两个List Definition,分别是Address和City,如下图: 2.City列表里修改Title为City Name,其实内部名称还是Title,注意一下: 3.给City的列表实例,添加几个值,用来测试使用,如下: 4.在Address列表里添加几个字段,分别是CityName(LookUp类型)和HomeAddress(Single Line of Text),如下: 5.查看Address列表的Schema.Xml,尤其是Fields节点,也就是字段,如

SharePoint 2013无代码实现列表视图的时间段动态筛选

本文介绍两种为列表视图设置时间段筛选器的方法.其中,第一个方法用于SharePoint Server,第二个方法同时还能用于SharePoint Foundation. 方法一:日期筛选器Web部件 先看一下接下来要用的列表,是一个任务列表: 为了实验方便,我们先建个页面,用来放置目标列表视图和筛选器. 1.打开SPD,选择左侧的“网站页面”,点击功能区里的“新建”->"Web部件页". 如果是已有页面,则右键高级模式编辑. 2.找到页面主要区域的WebPart Zone,在其中

Office 365 plans, SharePoint Online, and SharePoint 2013 on-premises 功能对比列表

Andrew ConnellSharePoint大牛整理了一个各个版本SharePoint功能对比列表,是SharePoint相关人员必备资料.赶紧收藏起来. SharePoint 2013 Feature Matrix Office 365 plans, SharePoint Online, and SharePoint 2013 on-premises 功能对比列表,布布扣,bubuko.com Office 365 plans, SharePoint Online, and SharePo

【日常运维】SharePoint 2013 缺少站点保存为模板选项

如果您尝试在SharePoint Server 2013中保存站点,我们没有看到"将站点另存为模板"选项,则可能是因为该站点已启用站点发布功能.如 之前文章提到 "SharePoint 2010 缺少站点保存为模板选项" . 在SharePoint 2013中,我们使用SharePoint 2010 诀窍(在站点URL末尾添加_layouts / _savetmpl.aspx)是无效的.微软官方也给出相关知识库KB 说明(KB 24922356),那我如何将站点保存

SharePoint 2013 开发文档管理字段小记

前言 最近有这样一个需求,就是要求在列表库里管理文档,需要多文档管理.带版本控制.可以单独授权等基本操作.于是乎,就开发了一个自定义段,这里介绍一下字段的思路,里面有一些遇到的问题,在群友的帮助下已解决,特此感谢群友[悉尼]Jay,大胡子帅哥. 思路 首先简单说一下自定义字段的思路,既然要管理文档,就需要用到文档库,所以在解决方案里带上一个文档库,开启版本控制(文档库的xml里有这个属性 VersioningEnabled="true"): 其次,创建字段,继承自SPFieldMult

SharePoint 2013 使用 PowerShell 更新用户

在SharePoint开发中,经常会遇到网站部署,然而,当我们从开发环境,部署到正式环境以后,尤其是备份还原,所有用户组的用户,还依然是开发环境的,这时,我们就需要用PowerShell更新一下: PowerShell命令截图: Windows PowerShell ISE编辑工具编写PowerShell非常方便,头上的一句add是添加SharePoint的引用: PowerShell完整代码: PowerShell的编写和cmd命令.C#代码都有一些区别,尤其是比较字符,字符串连接,变量等等,

SharePoint 2013 通过JavaScript实现列表标题列宽度可拖动

前言 最近有个新需求,用户希望标题栏可以拖动宽度,其实觉得没什么用,既然用户要了又推不掉,就勉为其难实现一下吧. 其实原理比较简单,就是利用JavaScript对标题栏进行宽度控制,然后从网上搜了一下,碰巧看到有人写好的方法,秉承拿来主义的精神,就借用了一下,详细脚本参考附录. 1.默认的SharePoint列表是下面的样子,每一列的内容都是自适应的,很紧凑,其实也还好: 2.拖动以后的样子是下面的,其实感觉也没什么用,很鸡肋,想想用户后续肯定会提,把当前状态保存下来的需求: 虽然自己这次没有把

SharePoint 2013 为站点配置基于主机标头的双域名

SharePoint的应用中,经常需要配置双域名,为不同的认证方式提供访问入口,下面简单介绍下,如何以主机标头的方式为SharePoint配置双域名: 配置基于主机标头的双域名 1.原本可以访问的测试站点,如下图 2.去管理中心,为应用程序创建扩展应用程序,如下图: 3.填写扩展应用程序的名字,也就是第二个域名,如下图: 4.可以到IIS中查看,多出来一个Web站点,如下图: 5.然后就可以访问这个站点的地址了,如下图: 修改SharePoint站点主机标头 1.进入IIS,站点,如下图: 点击

基于lucene的案例开发:纵横小说更新列表页抓取

转载请注明出处:http://blog.csdn.net/xiaojimanman/article/details/44831003 http://www.llwjy.com/blogdetail/a2d1df2b69f17696865f086777996fb1.html 个人博客站已经上线了,网址 www.llwjy.com ~欢迎各位吐槽~ ----------------------------------------------------------------------------