2009-12-10 2 views

ответ

0

Я думаю, что вы должны создать пользовательский тип поля, так что вы можете управлять отображением типа DateTime и проверки и т.д. - см this blog post для получения дополнительной информации

0

У меня была такая же проблема в Sharepoint 2010 и решить ее , Проводка в случае, если кто-то найдет это полезным :)

Для этого нужно использовать «Вычисленный» тип столбца.

От GUI:

  1. Создать новый столбец
  2. Пика типа "Рассчитано".
  3. Выберите столбец «Создать» и добавьте в формулу.
  4. Сохранить.

Из кода:

Насколько я могу судить, есть два варианта для достижения этой цели:

  1. Доступ к «Созданный» и либо установить его ShowInDisplayForm свойство верно или добавить столбец в представление (например, DefaultView).

  2. Создайте расчетный столбец, который указывает на столбец «Создано», как это делает пример GUI. Хитрость заключается в том, чтобы установить «Формулу» & свойства «OutputType».

    SPSecurity.RunWithElevatedPrivileges(delegate() 
    { 
        using (SPSite site = new SPSite(siteUrl)) 
        { 
         using (SPWeb web = site.RootWeb) 
         { 
          SPList list = web.Lists["test"]; 
          string fieldName = list.Fields.Add("Timestamptest", SPFieldType.Calculated, false); 
          SPFieldCalculated field = list.Fields[fieldName] as SPFieldCalculated; 
          field.Formula = "=Created"; 
          field.OutputType = SPFieldType.DateTime; 
          field.ShowInEditForm = false; 
          field.Update(); 
          list.Update(); 
          SPView defaultView = list.DefaultView; 
          defaultView.ViewFields.Add(field); 
          defaultView.Update(); 
         } 
        } 
    });