我正在使用
string field = list.Fields.Add(StaticName, SPFieldType.User, true);
SPFieldUser user = new SPFieldUser(list.Fields, field);
user.AllowMultipleValues = allowMultiple;
user.Required = Required;
user.SelectionMode = mode;
user.LookupField = "Name";
user.Update();
代码示例创建SPUser类型的字段。 它创造了完美的领域,但在默认的显示价值,它给员工提供了很好的帮助。 "帐户"值而不是"名称"或"姓名(有在线状态)。如何将此显示值更改为" Name"务实。
谢谢。
答案 0 :(得分:0)
您可以通过两种方式实现这一目标:
创建之后再次获取该字段并使用它(阴天)作为SPFieldLookup字段,因为SPUserField是SPFieldLookup的子代:
SPFieldLookup userfield = (SPFieldLookup)list.Fields["fieldname"];
Userfield.LookupField = "ImnName";
Userfield.Update();
或者您可以使用AddFieldAsXml方法创建字段,如下所示:
list.Fields.AddFieldAsXml(@"<Field Name='TypeUser' ID='{99bd898d-c181-4ca9-8397-c9fc032fcdf9}' DisplayName='TypeUser' Type='User' ShowField='ImnName' ></Field>");
list.Update();
您还应该查看Presence属性并将其设置为true。