MultiValue Control
A ComboBox Control to accept and show multiple values for a field by showing a list of checkboxes.
TFS InstallationTo install on a TFS instance, download the control and do the following:
- Open a web browser and navigate to the TFS instance.
- Go to "Server settings" under the white gear and select the "Legacy Extensions" tab.
- Click "Install" and select the zip file "CodePlex.WitCustomControls.MultiValueControl" which is located inside the downloaded folder "WitCustomControlSetup2015-1.3.4.6."
Visual Studio InstallationTo install for a Visual Studio instance, download the control and do the following:
- Open the downloaded zip.
- Execute the Windows installer package "WitCustomControlSetup2015."
Using the ControlIn order to use this control, two files must be present in the deployment folder:
MultiValueControl.wicc
CodePlex.WitCustomControls.dll
The deployment folder is located at the following location under a default client install: <ApplicationData>\Microsoft\Team Foundation\Work Item Tracking\Custom Controls.
SchemaFields associated with multivalue control should have list of suggested values and each value enclosed in square brackets. For example:
<FIELD name="Triage" refname="Microsoft.VSTS.Common.Triage" type="String" reportable="dimension">
<HELPTEXT>Status of triaging the bug</HELPTEXT>
<SUGGESTEDVALUES expanditems="false">
<LISTITEM value="[Approved]" />
<LISTITEM value="[Investigate]" />
<LISTITEM value="[Rejected]" />
<LISTITEM value="[Submit]" />
</SUGGESTEDVALUES>
</FIELD>
Then use MultiValueControl as controltype for that field in Form section, for example:
<Control Type="MultiValueControl" FieldName="Microsoft.VSTS.Common.Triage" Label="Triag&e:" LabelPosition="Left" />
QueryingFor quering work item based on MultiValueControl field, the control value is treated as a string. To search for items that has a specific list item selected in the MultiValueContorl use the contains operator and don't forget the square bracket when you enter the value. If you are searching for a specific list item selected and only that item is selected use the = operator. If sreaching for item that has more than one list item selected use multipe 'contains' clauses for that field.