Escalonar verticalmente uma caixa de exibição, mas esticar horizontalmente

Quero criar uma caixa de exibição (ou algo semelhante) que dimensione apenas sua altura e depois estenda seu conteúdo horizontalmente.

Se eu fizer isso:

<Viewbox>
  <StackPanel>
    <Button>Foo</Button>
    <Button>Bar</Button>
  </StackPanel>
</Viewbox>

então eu entendi:

http://www.excastle.com/misc/viewbox-center.png

Ele age como se os dois botões tivessem HorizontalAlignment = "Center" e depois escalava o resultado. Mas eu não quero HorizontalAlignment = "Center"; Quero HorizontalAlignment = "Stretch", assim:

http://www.excastle.com/misc/viewbox-stretch.png

Então, eu quero que ele leia a altura desejada do seu conteúdo, calcule um fator de escala com base apenas na altura e permita que o conteúdo da escala seja estendido horizontalmente.

Existe alguma maneira de fazer isso usando o Viewbox e / ou algum painel de terceiros?

questionAnswers(4)

yourAnswerToTheQuestion