2014-01-20 1 views
0

Это должно быть очень просто и просто отсутствует. У меня есть окно автозаполнения, и оно не заполняет все пространство поля; Sample view of AutoCompleteФормирование AutoCompleteBox DropDown

Желтая коробка добавлена ​​к изображению, а не к части программы. Граница для каждой строки добавляется, чтобы визуально видеть, какое пространство занимает каждый. Вот XML для DataTemplate;

<Border Height="Auto" BorderBrush="Black" BorderThickness="1" > 
<Grid HorizontalAlignment="Stretch"> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="5*"/> 
     <ColumnDefinition Width="3*"/> 
     <ColumnDefinition Width="2*"/> 
    </Grid.ColumnDefinitions> 
    <StackPanel Grid.Column="0"> 
     <Grid> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="Auto"/> 
       <ColumnDefinition Width="2"/> 
       <ColumnDefinition Width="Auto"/> 
      </Grid.ColumnDefinitions> 
      <StackPanel Orientation="Vertical" Grid.Column="0"> 
       <TextBlock Text="Description:" Foreground="Gray" Margin="2,0,2,0" /> 
       <TextBlock Text="Item ID:" Foreground="Gray" Margin="2,0,2,0" /> 
      </StackPanel> 
      <StackPanel Orientation="Vertical" Grid.Column="2"> 
       <TextBlock Text="{Binding Descrip}" Margin="2,0,2,0" /> 
       <TextBlock Text="{Binding ItemID}" Margin="2,0,2,0" /> 
      </StackPanel> 
     </Grid> 
    </StackPanel> 
    <StackPanel Grid.Column="1"> 
     <Grid> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="Auto"/> 
       <ColumnDefinition Width="2"/> 
       <ColumnDefinition Width="Auto"/> 
      </Grid.ColumnDefinitions> 
      <StackPanel Orientation="Vertical" Grid.Column="0"> 
       <TextBlock Text="Department ID:" Foreground="Gray" Margin="2,0,2,0" /> 
       <TextBlock Text="Class ID:" Foreground="Gray" Margin="2,0,2,0" /> 
      </StackPanel> 
      <StackPanel Orientation="Vertical" Grid.Column="2"> 
       <TextBlock Text="{Binding DepartmentID}" Margin="2,0,2,0" /> 
       <TextBlock Text="{Binding ClassID}" Margin="2,0,2,0" /> 
      </StackPanel> 
     </Grid> 
    </StackPanel> 
    <StackPanel Grid.Column="3" HorizontalAlignment="Right"> 
     <TextBlock Margin="2,0,0,2" FontSize="16" FontWeight="Bold" > 
      <Run Text="$" /> 
      <Run Text="{Binding Price}" /> 
     </TextBlock> 
    </StackPanel> 
</Grid> 

Благодаря

+1

Эта ссылка поможет вам: [StackOverflow] [1] [1]: http://stackoverflow.com/questions/16832725/making-a-grid-in-a- ListView-ItemTemplate-заливка – gomi42

ответ

0

Благодаря @ gomi42 это работало;

<Style x:Key="autoBoxStyle" TargetType="ListBoxItem"> 
    <Setter Property="HorizontalContentAlignment" Value="Stretch" /> 
</Style>