Pregunta

Cuando trace un grupo, el Marco de la cinta de Windows admite algunos diseños predefinidos . Uno de los diseños, lo que requiere cuatro botones se llama FourButtons.

Este diseño es compatible con 3 tamaños diferentes, grande , Medio y Pequeño . En cada caso se da a los diseños:

grande

introducir descripción de la imagen aquí

Medio

introducir descripción de la imagen aquí

Pequeño

introducir descripción de la imagen aquí

Ahora estoy usando la plantilla predefinida FourButtons en mi archivo XML como:

<?xml version="1.0" encoding="utf-8"?>
<Application xmlns="http://schemas.microsoft.com/windows/2009/Ribbon">
   ...
   <Application.Views>
      <Ribbon>
         ...
         <Ribbon.Tabs>
            <Tab CommandName="tabHome">
               <Group CommandName="grpActivity" SizeDefinition="FourButtons">
                  <Button CommandName="cmdStartWorking" />
                  <Button CommandName="cmdStopWorking" />
                  <Button CommandName="cmdPrint" />
                  <Button CommandName="cmdDuplicateTicket" />
               </Group>
            </Tab>
         </Ribbon.Tabs>

      </Ribbon>
   </Application.Views>
</Application>

Y se puede ver la línea

<Group CommandName="grpActivity" SizeDefinition="FourButtons">

que especifica la plantilla de diseño FourButtons.

Y mi diseño es FourButtons

alt text

A excepción no quiero FourButtons diseño, quiero " cuatro botones, Two Big dos pequeños ".

De la misma manera que hay ThreeButtons-OneBigAndTwoSmall:

introducir descripción de la imagen aquí

Y hay una FiveButtons:

introducir descripción de la imagen aquí

quiero un FourButtons-TwoBigTwoSmall, que puedo manualmente maqueta:

alt text

Desafortunadamente de programación declarativa que Microsoft inventó para la creación de diseños personalizados confunde mí como un programador.

¿alguien puede descifrar el lenguaje declarativo ejemplo en la parte inferior de la página y subir con un FourButton-TwoBigTwoSmall plantilla?

Nota: Todos los gráficos bonitos, el formato, enlaces, y esas cosas se utilizan para atraer a las ardillas - que aman gráficos brillantes. Y si realmente leído hasta que pude realmente usar su ayuda.

¿Fue útil?

Solución

se debe usar BigButtonsAndSmallButtonsOrInputs SizeDefinition

por ejemplo.

      <Group CommandName="cmdGroupBatch" SizeDefinition="BigButtonsAndSmallButtonsOrInputs">
        <ControlGroup>
          <Button CommandName="cmdButtonGetBatch" />
          <Button CommandName="cmdButtonPutBatch" />
        </ControlGroup>
        <ControlGroup>
          <Button CommandName="cmdButtonSaveBatch" />
          <Button CommandName="cmdButtonDiscartBatch" />
        </ControlGroup>
      </Group>

Sólo cheque, si su grupo tiene size = "grande" en su Tab.ScalingPolicy.

Otros consejos

i finalmente hice darse cuenta.

En primer lugar es el mapa de control, lo que obliga a que el grupo tiene (en este caso) cuatro botones. Al tener cuatro entradas en el ControlNameMap que obligaría a que el grupo que utilizó esta definición tamaño en realidad tiene cuatro botones.

<ControlNameMap>
   <ControlNameDefinition Name="button1"/>
   <ControlNameDefinition Name="button2"/>
   <ControlNameDefinition Name="button3"/>
   <ControlNameDefinition Name="button4"/>
</ControlNameMap>

Los cuatro botones se dan alias:

  • button1
  • button2
  • button3
  • button4

para que puedan ser referenciados en las definiciones de seguir. En primer lugar es el grande plantilla:

<GroupSizeDefinition Size="Large">
    <ControlSizeDefinition ControlName="button1" ImageSize="Large" IsLabelVisible="true" />
    <ControlSizeDefinition ControlName="button2" ImageSize="Large" IsLabelVisible="true" />
    <ColumnBreak ShowSeparator="true"/>
    <ControlSizeDefinition ControlName="button3" ImageSize="Large" IsLabelVisible="true" />
    <ControlSizeDefinition ControlName="button4" ImageSize="Large" IsLabelVisible="true" />
</GroupSizeDefinition>

que hace que dos botones grandes, un separador, y otros 2 botones grandes.

La medio plantilla:

<GroupSizeDefinition Size="Medium">
    <ControlSizeDefinition ControlName="button1" ImageSize="Large" IsLabelVisible="true" />
    <ControlSizeDefinition ControlName="button2" ImageSize="Large" IsLabelVisible="true" />
    <ColumnBreak ShowSeparator="true"/>
    <Row>
        <ControlSizeDefinition ControlName="button3" ImageSize="Small" IsLabelVisible="true" />
    </Row>
    <Row>
        <ControlSizeDefinition ControlName="button4" ImageSize="Small" IsLabelVisible="true" />
    </Row>
</GroupSizeDefinition>

causa dos botones grandes, un separador, y luego dos filas (con cada fila que contiene un botón pequeño).

La pequeño plantilla:

<GroupSizeDefinition Size="Small">
    <Row>
        <ControlSizeDefinition ControlName="button1" ImageSize="Small" IsLabelVisible="true" />
        <ControlSizeDefinition ControlName="button3" ImageSize="Small" IsLabelVisible="false" />
    </Row>
    <Row>
        <ControlSizeDefinition ControlName="button2" ImageSize="Small" IsLabelVisible="true" />
        <ControlSizeDefinition ControlName="button4" ImageSize="Small" IsLabelVisible="false" />
    </Row>
</GroupSizeDefinition>

hace dos filas, de dos pequeños botones en cada uno, a aparecer.


Reunir todo:

<Group CommandName="grpActivity" >
    <SizeDefinition>
        <ControlNameMap>
            <ControlNameDefinition Name="button1"/>
            <ControlNameDefinition Name="button2"/>
            <ControlNameDefinition Name="button3"/>
            <ControlNameDefinition Name="button4"/>
        </ControlNameMap>
        <GroupSizeDefinition Size="Large">
            <ControlSizeDefinition ControlName="button1" ImageSize="Large" IsLabelVisible="true" />
            <ControlSizeDefinition ControlName="button2" ImageSize="Large" IsLabelVisible="true" />
            <ColumnBreak ShowSeparator="true"/>
            <ControlSizeDefinition ControlName="button3" ImageSize="Large" IsLabelVisible="true" />
            <ControlSizeDefinition ControlName="button4" ImageSize="Large" IsLabelVisible="true" />
        </GroupSizeDefinition>
        <GroupSizeDefinition Size="Medium">
            <ControlSizeDefinition ControlName="button1" ImageSize="Large" IsLabelVisible="true" />
            <ControlSizeDefinition ControlName="button2" ImageSize="Large" IsLabelVisible="true" />
            <ColumnBreak ShowSeparator="true"/>
            <Row>
                <ControlSizeDefinition ControlName="button3" ImageSize="Small" IsLabelVisible="true" />
            </Row>
            <Row>
                <ControlSizeDefinition ControlName="button4" ImageSize="Small" IsLabelVisible="true" />
            </Row>
        </GroupSizeDefinition>
        <GroupSizeDefinition Size="Small">
            <Row>
                <ControlSizeDefinition ControlName="button1" ImageSize="Small" IsLabelVisible="true" />
                <ControlSizeDefinition ControlName="button3" ImageSize="Small" IsLabelVisible="false" />
            </Row>
            <Row>
                <ControlSizeDefinition ControlName="button2" ImageSize="Small" IsLabelVisible="true" />
                <ControlSizeDefinition ControlName="button4" ImageSize="Small" IsLabelVisible="false" />
            </Row>
        </GroupSizeDefinition>
    </SizeDefinition>

    <Button CommandName="cmdStartWorking" />
    <Button CommandName="cmdStopWorking" />
    <Button CommandName="cmdPrint" />
    <Button CommandName="cmdDuplicateTicket" />
</Group>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top