Tuesday, August 22, 2017

Using the Work Item Multivalue control in TFS 2017 (On premise)

Today one of my colleagues in our ALM team asked for help. For a customer we upgraded their TFS environment to TFS 2017. One of the changes we had to do along the way was replacing the existing MultiValue control by a newer version(https://github.com/Microsoft/vsts-extension-multivalue-control).

Multivaluecontrol

We followed the steps as mentioned here(https://github.com/Microsoft/vsts-extension-multivalue-control/blob/master/xmldetails.md) but the control didn’t appear.

Here is the template XML that we were using(I removed some content):

Although we couldn’t see any difference with the steps mentioned above, it didn’t work.

When I had a look I noticed that the extension is only registered in the WebLayout part of the Form.

Remark: In TFS you always had 2 layouts(a layout and a weblayout), the first one applies when opening a work item in Visual Studio or Test Manager, the weblayout applies when opening a workitem in the browser.

We first tried to add the extension to the layout part as well, but this didn’t work and resulted in some errors.

Then I had an idea, TFS 2017 offers a new Work Item experience. As mentioned here(https://www.visualstudio.com/en-us/docs/work/reference/weblayout-xml-elements) the WebLayout element is only applied on the new work item experience! This explains why our changes didn’t show up.

The new Work Item experience is an opt-in experience that should be enabled by a collection administrator. After enabling it, our Multivalue control appeared on the form…

Remark: For TFS 2017, the new form is automatically available when you add team projects to a new collection.

No comments: