创建新表单 - Sharepoint

时间:2013-06-13 13:36:08

标签: c# sharepoint-2010 sharepoint-list custom-formatting

所以我有这样的代码:

    private void newAddFormForMembers(SPList list, SPWeb web)
    {
        list = web.Lists["MemberRecords"];
        string url = string.Format("_layouts/createform.apsx", web.ServerRelativeUrl, list.RootFolder.Url);

        var form = web.GetFile(url);
        if (form != null)
        {
            list.DefaultNewFormUrl = url;
            list.Update();
        }
    }

在将项目添加到特定列表时,我使用了SharePoint 2010设计器来获取创建表单的现有html。我添加了两个新字段,名字和姓氏。该列表包含一个成员名称,我从创建表单中删除了该字段,因为:

当我点击提交以将项目添加到列表中时,名字和姓氏需要将它们自动格式化为“姓氏,名字”。现在我可以将表单提交给我自己 - 我该怎么做? - 然后执行我的字符串操作如何从字段中获取值? - 和然后将信息推送到列表中我该怎么做?但是我又遇到了一个问题

编辑看起来与添加,名字和姓氏字段完全相同,我如何从列表中获取信息并填充新的编辑表单,特别是名字和姓氏字段,请记住,在列表中它们是格式为“姓氏,名字”?

这一切都是以编程方式完成的

1 个答案:

答案 0 :(得分:-1)

而不是更改列表的html newForm尝试编写Event Receiver

而不是从newForm中删除字段尝试隐藏列(您可以通过编程方式或使用Sharepoint Manager等外部工具

来执行此操作

在新/编辑表单中添加字段并获取回发事件的值我认为不简单/可能(通过javascript你可以访问onPreSave,你可以在回发之前操作项目值,在这里你可以写一些jscript的保存值到字段但在编辑时很难分割值)。 您可以:在列表FirstName和LastName上创建两列,再加上第三个字段FullName(隐藏为新/编辑表单),并且添加/更新了EH,您可以写FullName = LastName +“,”+ FirstName或没有EH你可以创建一个计算字段。