строка; # в выпадающем списке - PullRequest
1 голос
/ 07 мая 2009

Я сделал собственное выпадающее поле. Я хочу отобразить полные имена моих контактов. Я сделал расчетный столбец, потому что не каждый пользователь заполнил свое полное имя, только имя и фамилия. Если я хочу показать элементы в моем выпадающем списке, всегда есть строка; # перед моим значением. Кто-нибудь знает, как это убрать?

Вот код, где я заполняю свой выпадающий список

SPWeb web = site.OpenWeb(); 
SPDataSource dataSource = new SPDataSource(); 
dataSource.List = web.Lists["Contacts"];
this.testing.DataSource = dataSource; 
this.testing.DataTextField = "Full Name"; 
this.testing.DataValueField = "Full Name"; 
this.testing.DataBind();

ТНХ

Ответы [ 2 ]

2 голосов
/ 07 мая 2009

Тип поля, вероятно, «Пользователь» (я думаю, отображается как «Люди» в пользовательском интерфейсе). Это и другие поля поиска всегда хранятся в SharePoint таким образом. Компонент value - это идентификатор пользователя, а строковый компонент - имя пользователя.

Вы можете использовать регулярное выражение для разделения компонентов. Вы также можете привести значение к SPFieldUserValue , что является «правильным» способом, и использовать свойства этого класса для получения информации.

0 голосов
/ 07 мая 2009

Предполагая, что полное имя является текстовым полем, похоже, у вас есть ошибка в определении вычисляемого столбца, связанная с тем, что один из ваших входов является полем поиска.

Если вы не можете избавиться от этого более чистым способом, всегда есть substr (или, может быть, правильно, я никогда не смогу вспомнить синтаксис для функций Excel)

...