Diseñar el diseño de formularios de elemento de trabajo
Cuando diseña un formulario de elemento de trabajo, desea colocar los campos en el formulario para que admitan la entrada de datos y los procesos de flujo de trabajo que los miembros del equipo seguirán. Si simplemente está agregando algunos campos a un formulario existente, debe determinar en qué parte del formulario desea agregarlos. Si está agregando varios campos para que admitan una nueva colección de datos cuyo seguimiento se va a llevar a cabo, tal vez simplemente desee agregar una nueva pestaña para estos campos. Para minimizar la necesidad de desplazarse por el formulario, puede agrupar los campos en varias columnas al principio del formulario o en una pestaña.
Si está agregando un nuevo tipo de elemento de trabajo, tal vez desee copiar un tipo existente y modificarlo para mostrar los campos y el proceso de flujo de trabajo compatibles con ese nuevo tipo.
Cuando defina el diseño, tenga en cuenta las siguientes sugerencias para obtener los mejores resultados:
Aquellos campos que los miembros necesiten actualizar o a los que tengan que hacer referencia con frecuencia sitúelos al comienzo del formulario.
Aquellos campos que los miembros del equipo tengan que actualizar o a los que tengan que hacer referencia de forma esporádica sitúelos en una pestaña. Por ejemplo, los controles que vinculan elementos de trabajo o adjuntan archivos normalmente se sitúan en pestañas independientes.
Agrupe los campos en columnas para maximizar la presentación de los campos de datos. Puede usar columnas en la parte superior del formulario o en una pestaña. También puede mostrar las pestañas en un formato con varias columnas.
Use uno o varios controles de vinculación en pestañas independientes o en la misma pestaña para restringir los tipos de vínculos que se pueden crear entre los campos de tipos de elemento de trabajo.
Para obtener información sobre cómo se exportan, importan y comprueban los cambios de los formularios de elemento de trabajo, vea Cambiar el diseño del formulario del elemento de trabajo.
En este tema
Segmentar el formulario en áreas
Trabajar con pestañas
Agrupar campos
Cambiar el tamaño de las columnas
Usar un divisor para admitir tamaños de columna variables
Controlar el tamaño del formulario y sus elementos
Especificar diseños diferentes para los distintos destinos
Segmentar el formulario en áreas
Puede usar los elementos de diseño para segmentar su formulario de elemento de trabajo en áreas diferentes, agrupar campos relacionados y asignar espacio en el formulario según los requisitos de entrada de datos. En la tabla siguiente se describen los elementos que se usan para segmentar el formulario en diferentes áreas.
Elemento |
Descripción |
---|---|
FORM |
Contiene los elementos Layout que determinan la presentación de los campos y los controles del tipo de elemento de trabajo. |
Layout |
Contiene todos los elementos que determinan la presentación de los campos y los controles de un determinado destino. Puede especificar diseños diferentes para los distintos destinos, como Visual Studio o Team Web Access. Los elementos secundarios que puede especificar en un elemento Layout son, entre otros, los elementos Control, Group, TabGroup y Splitter. |
Group |
Agrupa los elementos secundarios del formulario. Un borde y una etiqueta opcional separan visualmente un grupo. Los grupos que se definen en una posición adyacente en la pila XML se dividen en vertical en el formulario mostrado. Puede especificar el elemento Column como un elemento secundario de un elemento Group. |
Column |
Mantiene todos los elementos secundarios en una columna vertical o divide un formulario verticalmente. Las columnas deben aparecer en un Group. Los elementos Group de Column pueden utilizarse para crear áreas anidadas. De forma predeterminada, las columnas dividen un Group uniformemente. Puede especificar un atributo de ancho opcional de tipo porcentual para asignar más espacio a una o varias columnas. Los elementos secundarios que puede especificar en un elemento Column son, entre otros, los elementos Control, Group, TabGroup y Splitter. |
Splitter |
Permite a los usuarios cambiar el tamaño del ancho asignado a dos columnas de un formulario. |
Tab |
Agrega pestañas diferentes a un formulario para admitir la presentación de campos y controles adicionales. Los elementos secundarios que puede especificar en un elemento Tab son, entre otros, los elementos Control, Group, TabGroup y Splitter. |
TabGroup |
Contiene un grupo de elementos TAB. En general, puede agregar las pestañas en un único grupo de pestañas. Sin embargo, podría apilar dos o más grupos de pestañas en un formulario. |
En la siguiente ilustración puede ver un formulario en cuya área superior se muestran ocho campos organizados en dos columnas. En la parte inferior se muestran dos conjuntos de tres pestañas organizados en un diseño de dos columnas.
Formulario personalizado con tres pestañas en un diseño de dos columnas
Parte superior del formulario
El siguiente código define la parte superior del formulario. Puede incorporar tantas columnas como sea necesario. Como se muestra en este ejemplo, la primera columna, cuyo tamaño es un 70 por ciento del ancho del formulario, contiene dos grupos de campos. El diseño del segundo grupo de campos, que contiene los campos PU (Use Area Path) y Priority, se establece en dos columnas. La segunda columna abarca el 30 por ciento restante del ancho del formulario. Cuando se cambia el tamaño del formulario, las áreas que están asignadas a las columnas varían proporcionalmente.
<FORM>
<Layout>
<Group>
<Column PercentWidth="70">
<Group>
<Column PercentWidth="100">
<Control FieldName="System.Title" Type="FieldControl" Label="Title" LabelPosition="Left" />
<Control FieldName="System.AreaPath" Type="WorkItemClassificationControl" Label="Area Path" LabelPosition="Left" />
<Control FieldName="System.IterationPath" Type="WorkItemClassificationControl" Label="&Iteration Path:" LabelPosition="Left" />
<Group>
<Column PercentWidth="50">
<Control FieldName="Microsoft.VSTS.Common.ProductUnit" Type="FieldControl" Label="PU (Use Area Path)" LabelPosition="Left" />
</Column>
<Column PercentWidth="50">
<Control FieldName="Microsoft.VSTS.Common.Priority" Type="FieldControl" Label="Priority" LabelPosition="Left" />
</Column>
</Group>
</Column>
</Group>
</Column>
<Column PercentWidth="30">
<Group Label="Status">
<Column PercentWidth="100">
<Control FieldName="System.Id" Type="FieldControl" Label="Id" LabelPosition="Left" />
<Control FieldName="System.State" Type="FieldControl" Label="State" LabelPosition="Left" />
<Control FieldName="System.AssignedTo" Type="FieldControl" Label="Assigned To" LabelPosition="Left" />
</Column>
</Group>
</Column>
</Group>
<Group Label="">
<Column PercentWidth="60">
. . .
</Layout>
</FORM>
Volver al principio
Trabajar con pestañas
Puede usar pestañas para reunir un grupo de campos o para admitir uno o varios controles especiales, como los controles que vinculan elementos de trabajo, vinculan el historial de elementos de trabajo o adjuntan archivos. Algunas definiciones de tipos de elemento de trabajo de las plantillas de procesos de Microsoft Solutions Framework (MSF) usan diversas pestañas para controlar los tipos de vínculos que se pueden crear, en función del tipo de vínculo. Para obtener más información, vea Elementos de trabajo y flujo de trabajo (Agile) o Elementos de trabajo y flujo de trabajo (CMMI).
Para obtener más información sobre el uso de controles especiales, vea los temas siguientes:
Si se usan los atributos que se describen en la tabla siguiente, puede etiquetar la pestaña y especificar el relleno y los márgenes que controlan el número de píxeles del interior y exterior del borde del control de pestaña.
Atributo |
Descripción |
---|---|
Label |
Obligatorio. Texto que especifica el nombre de la ficha. |
Margin |
Opcional. Especifica la cantidad de espacio (en píxeles) que debe haber en torno a la pestaña. |
Padding |
Opcional. Especifica, en píxeles, la cantidad de espacio que debe haber en torno al borde interior y exterior de la pestaña. |
Seis pestañas organizadas en un diseño en paralelo
En el código siguiente se muestra la sintaxis que se utiliza para crear el diseño que se representa en la ilustración anterior.
<FORM>
<Layout>
. . .
<TabGroup>
<Tab Label="Planning">
<Group Label="Status" Padding="(0,0,0,3)">
<Column PercentWidth="50">
<Control FieldName="Microsoft.DevDiv.Importance" Type="FieldControl" Label="Importance" LabelPosition="Left" />
<Control FieldName="Microsoft.DevDiv.Commitment" Type="FieldControl" Label="Commitment / Confidence" LabelPosition="Left" />
. . .
</Column>
<Column PercentWidth="50" />
</Group>
<Group>
<Column PercentWidth="100">
<Control FieldName="Microsoft.DevDiv.Story" Type="HtmlFieldControl" Label="Story Board" LabelPosition="Top" />
</Column>
</Group>
<Group>
<Column PercentWidth="100">
<Control FieldName="System.Description" Type="HtmlFieldControl" Label="Value Proposition Description" LabelPosition="Top" />
</Column>
</Group>
</Tab>
<Tab Label="Marketing">
<Group>
<Column PercentWidth="100">
<Control FieldName="Microsoft.DevDiv.MarketingOwner" Type="FieldControl" Label="Marketing Owner" LabelPosition="Top" />
<Control FieldName="Microsoft.DevDiv.MarketingDescription" Type="HtmlFieldControl" Label="Marketing Description" LabelPosition="Top" />
</Column>
</Group>
</Tab>
<Tab Label="Relationships">
<Control Type="LinksControl" Label="Pillars" LabelPosition="Top" Name="Pillars">
. . .
</Control>
<Control Type="LinksControl" Label="Experiences - Feature Groups" LabelPosition="Top" Name="Experiences">
. . .
</Control>
<Control Type="LinksControl" Label="Flags / Associations" LabelPosition="Top" Name="Flags">
. . .
</Control>
</Tab>
</TabGroup>
</Column>
<Column PercentWidth="40">
<TabGroup>
<Tab Label="History">
<Control FieldName="System.History" Type="WorkItemLogControl" Label="Detailed Description and History" LabelPosition="Top" Dock="Fill" />
</Tab>
<Tab Label="Links">
<Control Type="LinksControl" LabelPosition="Top" >
. . .
</Control>
</Tab>
<Tab Label="File Attachments">
<Control Type="AttachmentsControl" LabelPosition="Top" />
</Tab>
</TabGroup>
</Column>
</Group>
</Layout>
</FORM>
Volver al principio
Agrupar campos
Puede usar el elemento Group para agrupar elementos visualmente, como el control GroupBox de Windows. Si se usan los atributos que se describen en la tabla siguiente, puede etiquetar cada grupo y especificar el relleno y los márgenes que controlan el número de píxeles del interior y exterior del borde del área de grupo. El elemento Group debe ir seguido siempre de un elemento Column, aunque el grupo tenga solo una columna.
Debe utilizar el elemento Group como contenedor de los campos de una columna y como contenedor de las columnas de un área segmentada del formulario. El elemento Column solo puede especificarse como elemento secundario de un elemento Group.
Puede controlar el espaciado y el tamaño del diseño general del formulario especificando los atributos que se describen en la tabla siguiente.
Atributo |
Descripción |
---|---|
Label |
Opcional. Texto que especifica el nombre del grupo. |
Margin |
Opcional. Especifica la cantidad de espacio (en píxeles) que debe haber alrededor del grupo y entre el control y sus elementos colindantes. Se puede variar la cantidad de espacio en cada lado. |
Padding |
Opcional. Especifica la cantidad de espacio (en píxeles) que debe haber alrededor del borde exterior del grupo. Se puede variar la cantidad de espacio en cada lado. |
Grupo de campos organizados en una pestaña
En el código siguiente se muestra la sintaxis que se utiliza para crear el grupo de campos que se muestra en la ilustración anterior. Para obtener más información acerca de cómo se especifican los campos utilizando el elemento Control, vea Controlar cómo se muestran los campos de los elementos de trabajo.
<TabGroup>
<Tab Label="Planning">
<Group Label="Status" Padding="(0,0,0,3)">
<Column PercentWidth="5100">
<Control FieldName="Microsoft.DevDiv.Importance" Type="FieldControl" Label="Importance" LabelPosition="Left" />
<Control FieldName="Microsoft.DevDiv.Commitment" Type="FieldControl" Label="Commitment / Confidence" LabelPosition="Left" />
<Control FieldName="Microsoft.DevDiv.VisionDoc" Type="FieldControl" Label="Vision Doc" LabelPosition="Left" />
<Control FieldName="Microsoft.DeveloperDivision.Features.EstimatedCost" Type="FieldControl" Label="Estimated Cost" LabelPosition="Left" />
<Control FieldName="Microsoft.DevDiv.BusinessUnit" Type="FieldControl" Label="BU (Use Area Path)" LabelPosition="Left" />
<Control FieldName="Microsoft.DevDiv.Website" Type="FieldControl" Label="Website" LabelPosition="Left" />
</Column>
</Group>
. . .
</Tab>
</TabGroup>
Volver al principio
Trabajar con columnas
Puede diseñar un área en un formulario que tenga dos o más columnas. Puede especificar un ancho de columna fijo o porcentual, en relación con el ancho del elemento que lo contiene usando los atributos FixedWidth o PercentWidth, respectivamente. Estos dos atributos Column son mutuamente excluyentes. Para permitir a un usuario cambiar el tamaño de la columna, puede especificar un control Splitter, tal y como se describe en Usar un divisor para admitir tamaños de columna variables.
Diseño de tres columnas
El siguiente código genera el diseño de campos en tres columnas mostrado anteriormente. Cuando organice grupos de campos en columnas, utilice el elemento Group para que incluya cada columna de campos. Si lo desea, también puede etiquetar los grupos de campos.
<FORM>
<Layout>
<Group>
<Column PercentWidth="36">
<Group>
<Control FieldName="System.Title" Type="FieldControl" Label="Title" LabelPosition="Left" />
<Control FieldName="System.AreaPath" Type="WorkItemClassificationControl" Label="Area" LabelPosition="Left" />
<Control FieldName="Microsoft.VSTS.Common.ProductUnit" Type="FieldControl" Label="Product Unit" LabelPosition="Left" />
<Control FieldName="Microsoft.DevDiv.BusinessUnit" Type="FieldControl" Label="Business Unit" LabelPosition="Left" />
</Group>
</Column>
<Column PercentWidth="33">
<Group>
<Control FieldName="Microsoft.DevDiv.SubTitle" Type="FieldControl" Label="Sub Title" LabelPosition="Left" />
<Control FieldName="System.IterationPath" Type="WorkItemClassificationControl" Label="Iteration" LabelPosition="Left" />
<Control FieldName="Microsoft.DevDiv.Other" Type="FieldControl" Label="Other" LabelPosition="Left" />
</Group>
</Column>
<Column PercentWidth="31">
<Group>
<Control FieldName="Microsoft.DevDiv.Type" Type="FieldControl" Label="Type" LabelPosition="Left" />
<Control FieldName="System.AssignedTo" Type="FieldControl" Label="Assigned To" LabelPosition="Left" />
<Control FieldName="System.State" Type="FieldControl" Label="State" LabelPosition="Left" />
</Group>
</Column>
</Group>
. . .
</Layout>
</FORM>
Usar un divisor para admitir tamaños de columna variables
Puede usar el elemento Splitter si desea que el visor del formulario pueda cambiar el tamaño de las columnas dinámicamente. El divisor aparece como una línea de puntos en el formulario, tal y como se muestra en la siguiente ilustración. No puede especificar ningún elemento secundario en el elemento Splitter.
Diseño de dos columnas con un divisor
Un elemento Group que contiene elementos Column y Splitter debe especificar exactamente tres elementos Column en la secuencia siguiente:
Un elemento Column a la izquierda del divisor
Un elemento Column que contiene únicamente el elemento Splitter
Un elemento Column a la derecha del divisor
Vea el ejemplo siguiente para obtener más información.
<Group>
<Column PercentWidth="50">
<Group Label="First Group Left ">
<Column PercentWidth="50">
<Control FieldName="Microsoft.VSTS.Common.Priority" Type="FieldControl" Name="Pri2" Label="Priority:" />
<Control FieldName="Microsoft.VSTS.Common.Rank" Type="FieldControl" Label="Stack Rank:" />
<Control FieldName="Microsoft.VSTS.Scheduling.BaselineWork" Type="FieldControl" Label="Original Estimate:" />
<Control FieldName="Microsoft.VSTS.Scheduling.RemainingWork" Type="FieldControl" Label="Remaining:" />
</Column>
<Column>
<Splitter>
</Column>
<Column PercentWidth="50">
<Group Label="Second Group Right">
<Control Type="DateTimeControl" FieldName="ABC_Company.Project.Manual.ChangeDate" Label="Change Date" Format="Short" LabelPosition="Right" />
<Control Type="DateTimeControl" FieldName="ABC_Company.Project.Manual.EstimateStartDate" Label="Estimated Start Date" Format="Short" LabelPosition="Right" />
<Control Type="DateTimeControl" FieldName="ABC_Company.Project.Manual.ActualStartDate" Label="Actual Start Date" Format="Short" LabelPosition="Right" />
<Control Type="DateTimeControl" FieldName="ABC_Company.Project.Manual.FinishDate" Label="Finish Date" Format="Short" LabelPosition="Right" />
</Group>
</Column>
</Group>
Volver al principio
Controlar el tamaño del formulario y sus elementos
Puede especificar el tamaño horizontal y vertical mínimo de cada diseño de formulario utilizando el atributo MinimumSize. Sin embargo, el formulario cambia de tamaño en función de las dimensiones combinadas cuando el tamaño horizontal y el tamaño vertical combinados de los controles de campo y los diseños definidos en cada formulario son mayores que las dimensiones mínimas especificadas. Además, el tamaño vertical de todas las pestañas se ajusta a la dimensión necesaria para establecer el tamaño de la pestaña con el diseño vertical máximo. El tamaño del último control de campo de cada pestaña se puede modificar como corresponda para rellenar la dimensión vertical.
Las barras de desplazamiento aparecen cuando el contenedor que está mostrando el diseño del formulario es menor que el tamaño mínimo horizontal o vertical del formulario. En este caso, podría producirse un problema de doble desplazamiento. Con el doble desplazamiento, los usuarios pueden tener que desplazar tanto el propio formulario como el control de campo para localizar la información que desean ver. Para evitar el problema de doble desplazamiento, quizás desee situar controles de campo, como campos HTML y campos de historial, que estén sujetos al desplazamiento de su propia pestaña.
Volver al principio
Controlar el tamaño del diseño
Puede controlar el espaciado y el tamaño del diseño general del formulario especificando los atributos que se describen en la tabla siguiente.
Atributo |
Descripción |
Ejemplo de un valor de modelo |
---|---|---|
MinimumSize |
Opcional. Cadena con el formato (Ancho, Alto). Este valor especifica el tamaño mínimo para el propio formulario. Cuando el contenedor en el que se muestra el diseño del formulario es menor que este tamaño, aparecen barras de desplazamiento horizontal y vertical. Cuando el tamaño combinado de los controles de campo del formulario de diseño es mayor que el tamaño definido por el atributo MinimumSize, se omite el atributo. |
(100,100) |
Margin |
Opcional. Cadena con el formato (Izquierda, Superior, Derecha, Inferior) que especifica, en píxeles, la cantidad de espacio que debe haber alrededor del diseño. Se puede variar la cantidad de espacio en cada lado. |
(2,0,2,0) |
Padding |
Opcional. Cadena con el formato ((Izquierda, Superior, Derecha, Inferior) que especifica, en píxeles, la cantidad de espacio que debe haber entre el borde exterior del diseño y el borde interior. Se puede variar la cantidad de espacio en cada lado. |
(2,0,2,0) |
ControlSpacing |
Opcional. Especifica el espaciado vertical entre los controles del formulario. Integer. |
N/D |
Volver al principio
Controlar el tamaño de los elementos del formulario
Puede usar el atributo MinimumSize del elemento Control para especificar el tamaño y el alto mínimos que cada elemento del formulario debe ocupar. Si no tiene espacio vertical suficiente, aparecerá una barra de desplazamiento para mantener el tamaño mínimo. Sin este atributo, los controles se dibujan con sus tamaños predeterminado, a menos que haya controles en otras pestañas que ocupen más espacio y que aumenten el tamaño de la pestaña. Puede utilizar otros atributos, como Dock, Margin y Padding, para alinear o ajustar el control y definir el tamaño del borde que rodea al control. Para obtener más información, vea los temas siguientes:
Controlar cómo se muestran los campos de los elementos de trabajo
Definir controles de vínculos para restringir las relaciones de los vínculos
Volver al principio
Especificar diseños diferentes para los distintos destinos
Puede especificar diseños distintos para los diferentes destinos utilizando el atributo Target del elemento Layout. Si el destino es Visual Studio o Team Explorer Everywhere, puede especificar WinForms, y si el destino es Team Web Access, puede especificar Web.
<FORM>
<Layout Target="WinForms" >
. . .
</Layout>
<Layout Target="Web" >
. . .
</Layout >
</FORM>
Volver al principio
Vea también
Tareas
Cambiar el diseño del formulario del elemento de trabajo
Conceptos
Diseñar y personalizar un formulario de elementos de trabajo
Otros recursos
Controlar cómo se muestran los campos de los elementos de trabajo
Agregar el control de datos adjuntos
Definir controles de vínculos para restringir las relaciones de los vínculos
Historial de cambios
Fecha |
Historial |
Motivo |
---|---|---|
Mayo de 2011 |
Se ha corregido el uso de minúsculas o mayúsculas en varios elementos XML. La definición de esquema para el seguimiento de elementos de trabajo establece todos los elementos secundarios del elemento FORM con la convención Camel y escribe los demás elementos en mayúsculas. |
Corrección de errores de contenido. |
Junio de 2010 |
Se han agregado ilustraciones y ejemplos de código adicionales. |
Mejora de la información. |
Julio de 2010 |
Se han reescrito algunas secciones por motivos de claridad. Se ha corregido la referencia a Team Explorer Everywhere de la última sección. |
Mejora de la información. |