Вопрос

Я пытаюсь установить значение для Booleanfield на моем пользовательской новичке. Если я попытаюсь сделать это из Codebehind, визуально не меняется, но когда элемент будет сохранен, это поле будет пустым (ни правда, ни ложь):

<Сильный> ASPX:

<SharePoint:BooleanField runat="server" FieldName="boolField" ControlMode="New" ID="MyCustomField"/>
.

<Сильные> aspx.cs (вызывает в методе onload):

if (!SPContext.Current.Web.CurrentUser.IsSiteAdmin) // For example
{
    MyCustomField.Value = true; // Visually no changes
    MyCustomField.UpdateFieldValueInItem(); // Still nothing
}
.

Я даже попытался установить в .aspx (и получил сообщение об ошибке парсера »):

<SharePoint:BooleanField runat="server" FieldName="boolField" ControlMode="New" ID="MyCustomField" Value="TRUE"/>
.

Однако, если я постараюсь изменить поле любого другого типа (например, номер поле), все будет хорошо.

Откуда я ошибаюсь, и как я могу сделать это из кодона (или, по крайней мере, в ASPX)?

Спасибо заранее!=)

Это было полезно?

Решение

Alex,

You should set the control as follow:

MyCustomField.ItemFieldValue = "1";
MyCustomField.Field.DefaultValue = "1";

Where 1 is for true, and 0 is for false

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top