Не удается создать MultiValueControl в TFS 2017

Я обновляю существующий шаблон рабочего элемента, добавляя новое поле, которое должно быть «MultiLineControl». Ниже все, что я сделал. 1) Изменен шаблон WorkItem как

     <FIELD name="IssueOwner" refname="test.IssueOwner" type="String" reportable="dimension" >
      <HELPTEXT>Issue Owner</HELPTEXT>
        <SUGGESTEDVALUES expanditems="true">
        <LISTITEM value="test1" />
        <LISTITEM value="test2" />
        <LISTITEM value="test3" />      
        </SUGGESTEDVALUES>
      </FIELD>

 <Control FieldName="test.IssueOwner" Type="FieldControl"  PreferredType="MultiValueControl" Label="Issue Owner" LabelPosition="Left" />

2) Установленное расширение. Сначала я попробовал из расположенного ниже места в разделе «Установить контроль над веб-доступом» https://devblogs.microsoft.com/devops/multivaluelist-control-in-tfs-work-item-tracking/ Но тогда расширение устарело для TFS 2017.

Затем я установил https://marketplace.visualstudio.com/items?itemName=ms-devlabs.vsts-extensions-multivalue-control

Но все же мое поле - простое выпадающее меню. Не уверен, что мне не хватает. Может кто-нибудь помочь плз

Обновление 1) Я также пробовал материал из Entension но это ни на что не влияет. в моем экспорте рабочего элемента у меня есть два раздела в FORM. Макет и веб-макет. Ссылка говорит об изменении WebLayout. Но как изменить макет, поскольку это то, что загружает мой TFS, когда я использую его в проводнике?


person user3182464    schedule 09.12.2019    source источник


Ответы (1)


Протестировано на TFS 2017 (Version 15.117.27414.0), все работает как положено. Для этого выполните следующие действия:

  1. Установите расширение Multivalue control.

  2. Экспортируйте конкретный WIT с помощью инструмент witadmin (вы также можете использовать TFS Process Template Editorесли вы используете Visual Studio 2015 или 2017, ссылка подробности в этой ветке. ) :
    witadmin exportwitd /collection:CollectionURL /p:Project /n:TypeName /f:FileName

  3. Откройте экспортированный файл xml в текстовом редакторе и добавьте Extensiontag, чтобы сделать элемент управления доступным для формы рабочего элемента.

        <Extensions>
            <Extension Id="ms-devlabs.vsts-extensions-multivalue-control" />
        </Extensions>
    

    введите здесь описание изображения

  4. Добавьте свое настроенное поле:

     <FIELD name="IssueOwner" refname="test.IssueOwner" type="String" reportable="dimension" >
      <HELPTEXT>Issue Owner</HELPTEXT>
        <SUGGESTEDVALUES expanditems="true">
        <LISTITEM value="test1" />
        <LISTITEM value="test2" />
        <LISTITEM value="test3" />      
        </SUGGESTEDVALUES>
      </FIELD>
    
  5. Добавьте ControlContribution tag для вашего элемента управления Multivalue. В этом примере он добавляется в группу состояния.

        <Group Label="Status">
          <Control Label="Reason" Type="FieldControl" FieldName="System.Reason" />
          <ControlContribution Label="IssueOwner" Id="ms-devlabs.vsts-extensions-multivalue-control.multivalue-form-control">
                <Inputs>
                    <Input Id="FieldName" Value="test.IssueOwner" />
                </Inputs>
          </ControlContribution>                  
        </Group>
    
  6. Импортируйте измененный файл xml в свой проект:

    witadmin importwitd /collection:CollectionURL /p:Project /n:TypeName /f:FileName

  7. Проверьте результат:

введите здесь описание изображения

person Andy Li-MSFT    schedule 14.12.2019
comment
@user3182464 user3182464 Вы решили проблему с помощью решения? Любое обновление здесь? - person Andy Li-MSFT; 23.12.2019
comment
да, это сработало и для меня после того, как я включил новую форму в TFS 2017. Спасибо. - person user3182464; 02.01.2020