Question

Lors de la pose sur un groupe, soutient le cadre ruban de Windows certaines configurations prédéfinies . L'une des mises en page, ce qui nécessite quatre boutons est appelé FourButtons.

Cette disposition prend en charge 3 tailles différentes, Grande , Moyen et Petit . Dans chaque cas, il donne les dispositions:

Grande :

entrer image description ici

Moyen :

entrer image description ici

Petit :

entrer image description ici

En ce moment je suis en utilisant le modèle prédéfini de FourButtons dans mon fichier XML:

<?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>

Et vous pouvez voir la ligne

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

qui spécifie le modèle de mise en page de FourButtons.

Et ma mise en page est FourButtons :

Sauf que je ne veux pas FourButtons mise en page, je veux " Quatre boutons, deux grands deux petits ".

De la même manière qu'il ya ThreeButtons-OneBigAndTwoSmall:

entrer image description ici

Et il y a un FiveButtons:

entrer image description ici

Je veux un FourButtons-TwoBigTwoSmall, que je peux manuellement mockup:

Malheureusement déclarative programmation que Microsoft a inventé pour la création de mises en page personnalisées me confond en tant que programmeur.

Quelqu'un peut déchiffrer l'exemple de langage déclaratif au bas de la page et trouver un FourButton-TwoBigTwoSmall modèle ?

Remarque: Tous les jolis graphiques, le formatage, des liens et des trucs sont utilisés pour attirer les écureuils - qui aiment graphiques brillants. Et si vous lisez réellement loin je pouvais en fait votre aide.

Était-ce utile?

La solution

vous devez utiliser BigButtonsAndSmallButtonsOrInputs SizeDefinition

par exemple.

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

suffit de vérifier, si votre groupe a Taille = "Large" dans votre Tab.ScalingPolicy.

Autres conseils

i finalement fait comprendre.

Le premier est la carte de contrôle, qui exige que le groupe a (dans ce cas) quatre boutons. En ayant quatre entrées dans le ControlNameMap Mandons que le groupe en utilisant cette définition de la taille a en fait quatre boutons.

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

Les quatre boutons sont donnés alias:

  • button1
  • button2
  • button3
  • button4

afin qu'ils puissent être référencés dans les définitions à suivre. Le premier est le Grand modèle :

<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>

ce qui provoque deux gros boutons, un séparateur, et un autre deux gros boutons.

moyen template:

<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>

provoque deux gros boutons, un séparateur, puis deux rangées (avec chaque rangée contenant une petite touche).

petit modèle:

<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>

provoque deux lignes, de deux petits boutons dans chacune, apparaître.


Apporter tous ensemble:

<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>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top