WPF Listbox с текстовым полем - PullRequest
0 голосов
/ 16 февраля 2012

У меня есть список с текстовым полем

Текстовое поле определено в шаблоне данных, который заканчивается следующим образом:

    <TextBlock Grid.Row="4" Grid.Column="0" Text="Note"></TextBlock>
    <TextBox Height="Auto" Grid.Row="4" Grid.Column="1" 
        Text="{Binding PartData.Note}" AcceptsReturn="True" TextWrapping="Wrap" >
    </TextBox>
</Grid>

Я хочу, чтобы текстовое поле расширялось, когда пользователь вводит несколько строк, но онооленья кожа.Высота определения строки установлена ​​на *

Ответы [ 2 ]

3 голосов
/ 16 февраля 2012

Я попробовал ваш пример с этим кодом, и он работает (используйте Shift-Enter, чтобы начать новую строку внутри TextBox)

<Window x:Class="TextBoxWrap.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <ListBox Height="140" ItemsSource="{Binding}">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="auto"/>
                            <RowDefinition Height="*" />
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                        </Grid.ColumnDefinitions>

                        <TextBlock Grid.Row="1" Grid.Column="0" Text="Note"/>
                        <TextBox Margin ="10, 0,0,0" Height="Auto" Grid.Row="1" Grid.Column="1" Text="{Binding Count}" 
                            AcceptsReturn="True" TextWrapping="Wrap" />
                    </Grid>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>       
      </Grid>
</Window>
0 голосов
/ 16 февраля 2012

Вам нужно добавить

VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"

в TextBox, поэтому он занимает все доступное пространство.

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