首页 > 解决方案 > 无法在 TFS 2017 中创建 MultiValueControl

问题描述

我正在更新现有的工作项模板以具有一个应该是“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)安装的扩展首先我尝试从“在Web访问上安装控件”下的以下位置 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。该链接谈论改变WebLayout。但是当我在资源管理器上使用它时,如何将布局更改为我的 TFS 加载的内容?

标签: tfs-workitemmultivalue

解决方案


在 TFS 2017 ( Version 15.117.27414.0) 上测试,一切正常。请按照以下步骤进行操作:

  1. 安装多值控制扩展。

  2. 使用witadmin 工具导出特定的 WIT (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为您的多值控件添加。此示例将其添加到“状态”组。

        <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. 检查结果:

在此处输入图像描述


推荐阅读