Silverlight - автоматическое изменение размера текстового поля для заполнения пустого пространства - PullRequest
0 голосов
/ 13 июля 2010

Хорошо, это то, что я хочу сделать.

У меня есть окно с изменяемым размером , в котором имеется 3 элемента управления в одной строке в текущем порядке: textBlock, textBox и button.

textBlock и button имеют динамический текстТак что их размер зависит от текста внутри.

Теперь я хочу, чтобы textBox в середине всегда заполнял все пустое пространство между textBlock и кнопкой.

Как мне это сделать?

Я пробовал использовать следующий код, но он не работает из-за фиксированной ширины в столбцах 1. и 3.

<Grid Margin="0,0,5,0" >
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="40"/>
        <ColumnDefinition Width="*" />
        <ColumnDefinition Width="40"/> 
    </Grid.ColumnDefinitions>                                
    <TextBlock Grid.Column="0" HorizontalAlignment="Left" Text="Text1"/>
    <TextBox Grid.Column="1"/>
    <Button Grid.Column="2" Content="Button1" HorizontalAlignment="Center"/>
</Grid>

1 Ответ

1 голос
/ 13 июля 2010

Вы можете использовать Авто для двух внешних значений ширины столбца вместо указания ширины

<Grid Margin="0,0,5,0" > 
    <Grid.ColumnDefinitions> 
        <ColumnDefinition Width="Auto" /> 
        <ColumnDefinition Width="*" /> 
        <ColumnDefinition Width="Auto" />  
    </Grid.ColumnDefinitions>                                 
    <TextBlock Grid.Column="0" Text="Text1" /> 
    <TextBox Grid.Column="1"/> 
    <Button Grid.Column="2" Content="Button1" /> 
</Grid>

Возможно, вам не нужно горизонтальное выравнивание в столбцах

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...