none
переименовать столбец "Название" RRS feed

  • Вопрос

  • привет

    пытаюсь с помощью кода переименовать столбец "Название".

    не получается (

    такой код :

     SPField TitleField = list.Fields["Название"];
                TitleField.Title = "lkjh";
                TitleField.Update();

    не меняет на картинке Название на lkjh, зато после этого кода я вижу , применяя такою операцию в powershell

    $list.Fields |select title, internalname| more

    что стоит lkjh

    а такой код вообще ничего не делает

    SPField field = list.Fields.GetFieldByInternalName("Title");
                field.Title = "NewTitle";
                field.Update(); 

    помогите! как изменить на картинке "Название" на "lkjh" с помощью кода

    ведь с помощью браузера это делается элементарно  

    спасибо !

    28 сентября 2012 г. 7:02

Ответы

  • Вот этот ваш код рабочий!

    На всякий случай ещё раз проверил.

    SPField field = list.Fields.GetFieldByInternalName("Title");
    field.Title = "NewTitle";
    field.Update();
    Меняет отображаемое имя для поля. Соответственно оно меняется и на формах и на представлениях.

    My contributions: SharePoint 2010 Solution Installer

    • Помечено в качестве ответа Roman Zhukov 4 октября 2012 г. 7:56
    29 сентября 2012 г. 11:25

Все ответы

  • вру

    SPField field = list.Fields.GetFieldByInternalName("Title");
                field.Title = "NewTitle";
                field.Update(); 

    после это кода тоже можно увидеть изменения после команды в powershell

    $list.Fields |select title, internalname| more

    но как мне изменить название столбца на картинке !!!!?

    28 сентября 2012 г. 7:15
  • спасибо !

    но мне надо кодом а не SPD

    не получается(

    28 сентября 2012 г. 7:36
  • Посмотрите смежную тему. Там код который можно и в PowerShell и в студии на С#, например, запустить.

    [System.Reflection.Assembly]::LoadWithPartialName(“Microsoft.SharePoint”)
    #Replace the siteurl with your targeted site collection url.
    $siteurl = “URL of top-level site”

    $spsite=new-object Microsoft.SharePoint.SPSite($siteurl)
    $spweb=$spsite.OpenWeb()
    $spfield=$spweb.Fields.GetFieldByInternalName(“Title”)
    $spfield.Title = “Title”
    $spfield.Update()
    $spweb.Dispose()
    $spsite.Dispose()

    И судя по комментариям, попробуйте все-таки нужно включить для списка управление типами контента, иначе даже в дизайнере не переименуете...

    И после выполнения кода вы страницу пробовали "жестко" обновлять по ctrl + F5 или вообще почистить кеш и заново открыть?


    28 сентября 2012 г. 10:04
  • Вот этот ваш код рабочий!

    На всякий случай ещё раз проверил.

    SPField field = list.Fields.GetFieldByInternalName("Title");
    field.Title = "NewTitle";
    field.Update();
    Меняет отображаемое имя для поля. Соответственно оно меняется и на формах и на представлениях.

    My contributions: SharePoint 2010 Solution Installer

    • Помечено в качестве ответа Roman Zhukov 4 октября 2012 г. 7:56
    29 сентября 2012 г. 11:25