【问题标题】:Can't edit newly added work item field无法编辑新添加的工作项字段
【发布时间】:2012-02-26 12:11:33
【问题描述】:

我正在尝试向 tfs2010 中的错误工作项添加一个新的字符串字段 (IterationCompleted)。使用 TFS 2010 电动工具,我编辑了添加新字段的工作项。这会产生以下 XML

<FieldDefinition reportable="dimension" refname="DevX.IterationCompleted" name="Iteration Completed" type="String">
  <ALLOWEDVALUES>
    <GLOBALLIST name="Iterations" />
  </ALLOWEDVALUES>
  <ALLOWEXISTINGVALUE />
  <DEFAULT from="value" value="∞" />
</FieldDefinition>

我将它添加到一些相关字段旁边的表单中。这是相关的 XML

<Group Label="Classification">
  <Column PercentWidth="100">
    <Control FieldName="System.AreaPath" Type="WorkItemClassificationControl" Label="&amp;Area:" LabelPosition="Left" />
    <Control FieldName="System.IterationPath" Type="WorkItemClassificationControl" Label="Ite&amp;ration Found:" LabelPosition="Left" />
    <Control FieldName="DevX.IterationCompleted" Type="FieldControl" Label="Iteration Resolved:" LabelPosition="Left" Name="IterationCompleted" />
    <Control FieldName="DevX.Customer" Type="FieldControl" Label="Customer:" LabelPosition="Left" />
    <Control FieldName="DevX.ReleaseNotes" Type="FieldControl" Label="Include in Release Notes:" LabelPosition="Left" />
    <Control FieldName="DevX.Billable" Type="FieldControl" Label="Billable:" LabelPosition="Left" Name="Billable" />
  </Column>
</Group>

它根本不参与工作流程。

我遇到的问题在于表格。对于新的错误,该字段按预期显示并且是可编辑的(已解决迭代):

但是,对于旧错误,该字段不可编辑。实际上根本无法控制输入任何内容:

我找到了一个similar question,其答案已被接受,以确保该字段为字符串,并且在表单上将类型设置为 FieldControl。如您所见,我已经做到了,并且仍然得到了我在上面看到的结果。我过去成功添加了字段,从未遇到过这个问题。有谁知道我可以做些什么来让这个字段在旧错误中可编辑?

【问题讨论】:

    标签: templates tfs workitem tfs-workitem


    【解决方案1】:

    我遇到了同样的行为......或者至少相似......

    我必须为所有列表添加默认值..

    当我没有默认值时,任何已创建的 WIT 都无法设置该值,因为它不是 ALLOWEDVAULES LISTITEM...

    (注意:此代码/XML 根据 WIT 的状态更改列表的值)

    示例:

    <FIELD reportable="dimension" refname="GovDept.ActionRequiredTFS" name="Action Reqd TFS" type="String">
        <WHEN field="System.State" value="Proposed">
          <ALLOWEDVALUES>
            <LISTITEM value="Assess" />
            <LISTITEM value="Prioritize" />
          </ALLOWEDVALUES>
          <DEFAULT from="value" value="Assess" />
        </WHEN>
        <WHEN field="System.State" value="Active">
          <ALLOWEDVALUES>
            <LISTITEM value="IA Complete" />
            <LISTITEM value="Impact" />
            <LISTITEM value="Implement" />
            <LISTITEM value="Migrate" />
            <LISTITEM value="Unit Test" />
            <LISTITEM value="Fix Fail" />
          </ALLOWEDVALUES>
          <DEFAULT from="value" value="Impact" />
        </WHEN>
        <WHEN field="System.State" value="Resolved">
          <ALLOWEDVALUES>
            <LISTITEM value="Test" />
            <LISTITEM value="Fix Fail" />
          </ALLOWEDVALUES>
          <DEFAULT from="value" value="Test" />
        </WHEN>
        <ALLOWEXISTINGVALUE />
      </FIELD>
    

    样本结束

    【讨论】:

      【解决方案2】:

      我刚刚在使用 VS2012 的 TFS 2010 中遇到了这个问题。

      重现步骤:

      1. 创建自定义字段类型:字符串
      2. 向布局添加字段,确保它是一个 FieldControl
      3. 预览表单:工作正常
      4. 转到查询并双击您正在编辑的类型的现有工作项 (对我来说,这是一个待办事项。) 即使光标显示在字段中,也观察不到编辑字段的正确方法。似乎是只读的。

      验证该字段不是只读的(布局中的属性为 false)后,我在保存编辑后重新启动了 Visual Studio。

      这解决了问题,编辑控件开始正常工作。我可以一遍又一遍地重现这一点。

      【讨论】:

      • 这也是我发现的。我认为您可以直接关闭所有工作项,而无需重新启动 Visual Studio。
      【解决方案3】:

      达斯汀,

      我们从未听说过这种行为。如果你想让微软看看这个问题,你可以在https://connect.microsoft.com/visualstudio提交一个错误

      埃瓦尔德·霍夫曼 TFS 项目经理

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-04-27
        • 1970-01-01
        • 1970-01-01
        • 2010-12-06
        • 2021-04-22
        • 1970-01-01
        • 2013-03-05
        • 1970-01-01
        相关资源
        最近更新 更多