2014-11-03 51 views
0

我有这个XAML并且有网格宽度问题。在Windows Store应用程序的DataTemplate中将TextBlock宽度设置为100%

<DataTemplate x:Key="FormTileItemTemplate"> 
    <Grid Height="70" Background="#FFECECEC"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="*" /> 
      <ColumnDefinition Width="38" /> 
     </Grid.ColumnDefinitions> 
     <StackPanel Margin="10,0,20,15" VerticalAlignment="Bottom"> 
      <TextBlock Text="{Binding FormName}" Foreground="Black" Style="{StaticResource CaptionTextStyle}" TextWrapping="NoWrap" Margin="0" FontSize="34.667" FontWeight="Light" LineHeight="32" /> 
     </StackPanel> 
     <Grid Grid.Column="1"> 
      <Image Stretch="UniformToFill" Source="/Assets/Images/FormCompleteRed.png" /> 
     </Grid> 
    </Grid> 
</DataTemplate> 

<Grid x:Name="itemFormsGrid" Margin="0,60,0,50"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="Auto"/> 
     <RowDefinition Height="Auto"/> 
     <RowDefinition Height="*"/> 
    </Grid.RowDefinitions> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="*"/> 
    </Grid.ColumnDefinitions> 

    <Image Grid.Column="0" Margin="0,0,20,0" Width="100" Height="100" Source="/Assets/Images/session-forms.png" Stretch="UniformToFill" HorizontalAlignment="Right" /> 

    <ListView 
     x:Name="formListView" 
     Grid.Row="1" 
     IsSwipeEnabled="False" 
     ItemsSource="{Binding}" 
     ItemTemplate="{StaticResource FormTileItemTemplate}" 
     d:DataContext="{Binding Path=SessionForms, Source={d:DesignInstance Type=SampleData:SessionReviewDesignDataSource, IsDesignTimeCreatable=True} }" 
     Margin="0,20,0,0" /> 
</Grid> 

这是输出。 Output

但我需要TextBlock伸展到右边。感谢任何帮助。

回答

2

套装HorizontalContentAlignment财产如下面伸展ListViewItems

<ListView.ItemContainerStyle> 
    <Style TargetType="ListViewItem"> 
     <Setter Property="HorizontalContentAlignment" Value="Stretch" /> 
    </Style> 
</ListView.ItemContainerStyle> 
+0

谢谢,但它不工作!我只是居中ListViewItem。 – Daniel 2014-11-04 09:15:18

相关问题