2015-11-25 4 views
1

У меня возникли проблемы с выравниванием предметов в моем Gridview. У меня есть DataTemplate, в котором есть Stackpanel. Внутри этого Stackpanel У меня есть 3 TextBlocks. Я не могу переместить те текстовые блоки, где я хочу, в Gridview. Я буду размещать мой XAML ниже ..Выравнивание элементов в GridView

XAML

<Page.Resources> 
    <DataTemplate x:Key="TileTemplate"> 
     <StackPanel Orientation="Horizontal"> 
      <TextBlock Text="{Binding TitleView}" FontFamily="Segoe UI" FontWeight="SemiBold" FontSize="18" Foreground="White" TextWrapping="Wrap" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="10,10" /> 
      <TextBlock Text="{Binding BodyView}" FontFamily="Segoe UI" FontWeight="Light" FontSize="14" Foreground="White" TextWrapping="Wrap" Margin="10,50" /> 
      <TextBlock Text="{Binding AuthorView}" FontFamily="Segoe UI" FontWeight="Light" FontStyle="Italic" FontSize="10" Foreground="White" TextWrapping="Wrap" HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="10,10" /> 
     </StackPanel> 
    </DataTemplate> 
</Page.Resources> 

<Grid x:Name="tileGrid"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="Auto" /> 
     <RowDefinition /> 
    </Grid.RowDefinitions> 



    <GridView x:Name="tileGridView" Margin="12,60" ItemTemplate="{StaticResource TileTemplate}"> 
     <GridView.ItemsPanel> 
      <ItemsPanelTemplate> 
       <ItemsWrapGrid Orientation="Horizontal"/> 
      </ItemsPanelTemplate> 
     </GridView.ItemsPanel> 

     <GridView.ItemContainerStyle> 
      <Style TargetType="GridViewItem"> 
       <Style.Setters> 
        <Setter Property="Template"> 
         <Setter.Value> 
          <ControlTemplate> 
           <Grid Background="#2A2A2A" 
            Margin="5" 
            Height="200" 
            Width="300"> 
            <ContentPresenter /> 
           </Grid> 
          </ControlTemplate> 
         </Setter.Value> 
        </Setter> 
       </Style.Setters> 
      </Style> 
     </GridView.ItemContainerStyle> 
     </GridView> 
    </Grid> 

Это результат я получаю:

enter image description here

Как вы можете видеть, что это полностью вырезав Автор и не выравнивает мое тело правильно (через мой встроенный стиль текстового блока).

Кто-нибудь знает, как я могу манипулировать положением текстовых блоков в моем GridView?

+0

Является ли горизонтальная ориентация вашей StackPanel намеренной? Я думаю, вам нужна вертикальная ориентация с левым горизонтальным выравниванием. – Danielle

+0

Этот вопрос непонятен. Мы видим изображение, показывающее, что происходит. Но как именно это отличается от того, что вы хотите? Пожалуйста, предоставьте [mcve], который надежно воспроизводит проблему, а также точное описание того, что делает этот код, и как это отличается от того, что вы хотите. –

+0

@ Даниэль, если вы хотите опубликовать это как предлагаемое решение, я отметю его как правильно – Code

ответ

1

Установите ориентацию стоп-панели вертикально с горизонтальной горизонтальной ориентацией и убедитесь, что это дает вам желаемый вид.

Смежные вопросы