2.4.1.7 Contact Selector Control

The contact selector control provides the ability to select one or more entities from a user information list (1).

 CONTACT_SELECTOR ::=
 <object class="xdActiveX" hideFocus="1" style="CONTACT_SELECTOR_STYLE" (height="HEIGHT" width="WIDTH")? classid="clsid:61e40d31-993d-4777-8fa0-19ca59b6d0bb" tabIndex="TAB_INDEX" tabStop="true" xd:xctname="{{61e40d31-993d-4777-8fa0-19ca59b6d0bb}}" xd:CtrlId="CONTROL_ID" xd:bindingType="xmlNode" xd:bindingProperty="Value" xd:boundProp="xd:inline" contentEditable="false" xd:binding="GROUP_XPATH1" xd:server="ANY_STRING" (title="ANY_STRING")? (accessKey="SINGLE_CHARACTER")? (xd:AllowMultiple="CONTACT_SELECTOR_ALLOW_MULTIPLE")? (xd:SearchPeopleOnly="CONTACT_SELECTOR_SEARCH_PEOPLE_ONLY")? (xd:SharePointGroup="CONTACT_SELECTOR_SHAREPOINT_GROUP")?>
     <xsl:if test="function-available('xdImage:getImageUrl')">
         <xsl:attribute name="src">
             <xsl:value-of select="xdImage:getImageUrl(GROUP_XPATH1)"/>
         </xsl:attribute>
     </xsl:if>
     (<xsl:attribute name="style">CONTACT_SELECTOR_STYLE?<xsl:choose>
             (<xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_DISPLAY_NONE; STYLE_CAPTION</xsl:when>|
             <xsl:when test="BOOLEAN_XPATH_EXPRESSION">STYLE_CAPTION</xsl:when>)+
         </xsl:choose>
     </xsl:attribute>)?
     (<xsl:choose>
         (<xsl:when test="BOOLEAN_XPATH_EXPRESSION">
             <xsl:attribute name="xd:disableEditing">yes</xsl:attribute>
         </xsl:when>)+
     </xsl:choose>)?
     <param NAME="ButtonFont" VALUE="CONTACT_SELECTOR_BUTTON_FONT"/>
     <param NAME="ButtonText" VALUE="ANY_STRING"/>
     <param NAME="DisplayNameXPath" VALUE="CONTACT_SELECTOR_DISPLAY_NAME_XPATH1"/>
     <param NAME="ObjectIdXPath" VALUE="CONTACT_SELECTOR_ACCOUNT_ID_XPATH1"/>
     <param NAME="ObjectTypeXPath" VALUE="CONTACT_SELECTOR_ACCOUNT_TYPE_XPATH1"/>
     <param NAME="SiteUrlXPath" VALUE="/Context/@siteUrl"/>
     <param NAME="SiteUrlDataSource" VALUE="Context"/>
     <param NAME="NewNodeTemplate" VALUE="CONTACT_SELECTOR_NEW_NODE_TEMPLATE"/>
     <param NAME="BackgroundColor" VALUE="CONTACT_SELECTOR_BACKGROUND_COLOR"/>
     <param NAME="MaxLines" VALUE="CONTACT_SELECTOR_MAX_LINES"/>
     <param NAME="Direction" VALUE="CONTACT_SELECTOR_DIRECTION"/>
 </object>

The following table lists parameters used by the contact selector control.

Parameter

Specification

ButtonFont

This parameter specifies the font that is used to render the button text and display names.

ButtonText

This parameter specifies the text that is displayed on the button that opens the address book.

DisplayNameXPath

This parameter specifies the LEAF_XPATH containing the display names.

ObjectIdXPath

This parameter specifies the LEAF_XPATH containing the object identifiers.

ObjectTypeXPath

This parameter specifies the LEAF_XPATH containing the object types.

SiteUrlXPath

This parameter specifies the LEAF_XPATH in the secondary data source (2) containing the server URL, whose user information list (1) this control is querying. This parameter MUST be ignored by the form server.

SiteUrlDataSource

This parameter specifies the name of the secondary data source (2) that contains the server URL, whose user information list (1) this control is querying. This parameter MUST be ignored by the form server.

NewNodeTemplate

This parameter specifies the XML template that is inserted in the form (1) when a new contact is selected.

BackgroundColor

This parameter specifies the background color of the contact selector input box.

MaxLines

This parameter specifies the maximum number of lines used by the contact selector input box to render display names.

Direction

This parameter specifies whether this control is displaying left-to-right or right-to-left.

CONTACT_SELECTOR_BUTTON_FONT: FONT, FONT_SIZE, CHARACTER_SET, FONT_WEIGHT, FONT_ITALIC, FONT_UNDERLINE, FONT_STRIKETHROUGH.

CONTACT_SELECTOR_STYLE: Semicolon-delimited list of (STYLE_SIZE?, STYLE_MARGIN?, STYLE_TEXT_DECORATION?, (BACKGROUND-COLOR: transparent; STYLE_XD_BACKGROUND_COLOR)?, STYLE_BORDER?, STYLE_FONT?, STYLE_COLOR?, STYLE_VERTICAL_ALIGN?, STYLE_DIRECTION?)

CONTACT_SELECTOR_BACKGROUND_COLOR: "2147483653" or MUST be an integer value that represents a red-green-blue (RGB) color. The value MUST be calculated using three variables (blue part, red part, green part), each of which MUST be an integer between zero and 255, in the following formula:

blue part * 65536 + green part * 256 + red part

CONTACT_SELECTOR_MAX_LINES: MUST be an integer between zero and 999, inclusive.

CONTACT_SELECTOR_DIRECTION: Specifies if the control is rendered left-to-right or right-to-left. The following table lists the possible values and explanations.

Value

Description

"0"

Use the form’s orientation.

"1"

Left-to-right.

"2"

Right-to-left.

CONTACT_SELECTOR_PERSON_XPATH: RELATIVE_REPEATING_GROUP_XPATH.

CONTACT_SELECTOR_DISPLAY_NAME_XPATH: RELATIVE_LEAF_XPATH.

CONTACT_SELECTOR_ACCOUNT_ID_XPATH: RELATIVE_LEAF_XPATH.

CONTACT_SELECTOR_ACCOUNT_TYPE_XPATH: RELATIVE_LEAF_XPATH.

CONTACT_SELECTOR_NEW_NODE_TEMPLATE:

 &lt;CONTACT_SELECTOR_PERSON_XPATH1&gt;&#xA;
     &lt;CONTACT_SELECTOR_DISPLAY_NAME_XPATH1&gt;&lt;/CONTACT_SELECTOR_DISPLAY_NAME_XPATH1&gt;&#xA;
     &lt;CONTACT_SELECTOR_ACCOUNT_ID_XPATH1&gt;&lt;/CONTACT_SELECTOR_ACCOUNT_ID_XPATH1&gt;&#xA;
     &lt;CONTACT_SELECTOR_ACCOUNT_TYPE_XPATH1&gt;&lt;/CONTACT_SELECTOR_ACCOUNT_TYPE_XPATH1&gt;&#xA;
 &lt;/CONTACT_SELECTOR_PERSON_XPATH1&gt;

GROUP_XPATH: MUST point to an XML node in the main data source.

CONTACT_SELECTOR_ALLOW_MULTIPLE: "true" or "false".

CONTACT_SELECTOR_SEARCH_PEOPLE_ONLY: "true" or "false".

CONTACT_SELECTOR_SHAREPOINT_GROUP: Values MUST be those for UserSelectionScope, as specified in [MS-WSSFO2] section 2.2.8.3.3.1.

The following table lists control-specific attributes used by the contact selector control.

Attribute

Section

xd:AllowMultiple

2.4.2.37.1

xd:binding

2.4.2.6

xd:bindingProperty

2.4.2.7

xd:bindingType

2.4.2.8

xd:boundProp

2.4.2.9

xd:CtrlId

2.4.2.10

xd:disableEditing

2.4.2.12

xd:SearchPeopleOnly

2.4.2.37.7

xd:server

2.4.2.37.8

xd:SharePointGroup

2.4.2.37.9

xd:xctname

2.4.2.35

The xdImage:getImageUrl XSL function extension, as specified in section 2.4.3.5, is used by the contact selector control.