2014-10-28 2 views
1

Предположим, у меня есть два видовых окна с двумя текстовыми блоками внутри них. Оба они имеют одинаковую ширину и высоту, но текст не будет иметь одинаковую длину. Как я могу заставить их иметь одинаковый размер шрифта, независимо от количества символов?Установка одинакового размера шрифта в нескольких окнах просмотра

Пример кода:

<Viewbox x:Name="vb1"> 
    <TextBlock Text="Some text" /> 
</Viewbox> 
<Viewbox x:Name="vb2"> 
    <TextBlock Text="Some bigger text" /> 
</Viewbox> 

Вот что я хотел бы:

enter image description here

ответ

2

Место оба TextBlock управления в том же ViewBox:

<Viewbox> 
    <Grid> 
     <TextBlock Text="Some text" /> 
     <TextBlock Text="Some bigger text" /> 
    </Grid> 
</Viewbox> 

Что сказал Майк Стробел марки смысл; Я не уверен, хотите ли вы накладывать текст или нет. Если нет, то замените Grid с StackPanel, чтобы получить такой эффект, как это:

enter image description here

Чтобы разместить их бок о бок, вы можете поиграть с Grid и устанавливающих ширины столбцов ... YMMV , Я не уверен, что еще предложить, потому что я не совсем уверен, чего вы пытаетесь достичь.

<Viewbox> 
    <Grid> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="300" /> 
      <ColumnDefinition Width="300" /> 
     </Grid.ColumnDefinitions> 
     <TextBlock Text="Some text" /> 
     <TextBlock Text="Some bigger text" Grid.Column="1" /> 
    </Grid> 
</Viewbox> 
+1

Обратите внимание, что текстовые блоки могут быть помещены в 'StackPanel' или размещены таким образом, чтобы они не перекрывались. –

+0

@MikeStrobel Хорошая мысль, не уверен, что было намерение OP, но обновил мой ответ. –

+0

Хорошо, это мне очень помогло, у меня просто возникают проблемы с еще одной деталью: как я могу заставить текстовые блоки одинаковой ширины? Я загрузил фотографию, чтобы лучше объяснить ситуацию. Я попытался создать сетку с двумя столбцами с шириной = 1 *, но не повезло, и со стековой панелью она не будет уважать соотношение 50:50. – HDD

Смежные вопросы