2012-02-16 62 views
0

我有一個列表框與一個文本框WPF列表框與文本框

文本框在像這樣

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

我想要當用戶輸入多個行,但它的文本框,擴大結束一個DataTemplate定義犯規。該rowdefintion高度設置爲*

回答

3

我試過這個代碼你的樣品,和它的作品(請使用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

找到它了,我在該行上添加了初始大小,然後鎖定了它。我改變了它,並在文本框中添加了原始大小,然後運行 – klashagelqvist 2012-02-27 11:49:04

0

您需要

VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch" 

添加到文本框所以它需要所有可用空間。

+0

號,沒有工作文本框仍是固定的,不與擴大文字 – klashagelqvist 2012-02-16 04:40:43