2016-10-22 13 views
0

ListViewItemのテンプレートを作成しました。ListView ItemTemplateが埋められない

すべてのスペースを埋めるわけではありません。

マイテンプレートは以下の通りです:

<UserControl 
x:Class="AgendaUWP.Styles.Template.ItemTemplateContatti" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:local="using:AgendaUWP.Styles.Template" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
mc:Ignorable="d" 
d:DesignHeight="100" 
d:DesignWidth="400"> 
<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="3" /> 
     <ColumnDefinition /> 
     <ColumnDefinition /> 
    </Grid.ColumnDefinitions> 
    <Border Background="CornflowerBlue" Grid.Column="0" Width="3" Margin="0 0 0 0" VerticalAlignment="Stretch"/> 
      <StackPanel Grid.Column="1" Orientation="Vertical" Margin="10 0 0 0" HorizontalAlignment="Stretch" VerticalAlignment="Center" > 
       <TextBlock Text="{Binding Tipo}" FontWeight="Thin" FontSize="10" TextAlignment="Center" /> 
       <TextBlock Text="{Binding Descrizione}" FontWeight="SemiBold" FontSize="16" TextAlignment="Center"/> 
      </StackPanel> 
      <StackPanel Grid.Column="2" Orientation="Vertical" VerticalAlignment="Center" HorizontalAlignment="Stretch" > 
       <StackPanel Orientation="Horizontal" Margin="0 10 0 10" > 
        <SymbolIcon Symbol="Phone" Margin="10 0 10 0"></SymbolIcon> 
        <TextBlock Text="{Binding Telefono}" /> 
       </StackPanel> 
       <StackPanel Orientation="Horizontal" Margin="0 10 0 10"> 
        <SymbolIcon Symbol="Mail" Margin="10 0 10 0"></SymbolIcon> 
        <TextBlock Text="{Binding Email}" /> 
       </StackPanel> 
      </StackPanel> 

</Grid> 

これは、それを使用する方法です:

     <ListView x:Name="listaContatti" 
          IsItemClickEnabled="True" MaxHeight="200" 
          SelectedItem="{Binding ClientiContatti,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" 
          ItemsSource="{Binding ListaClientiContatti,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"> 
          <ListView.ItemTemplate> 
            <DataTemplate> 
            <template:ItemTemplateContatti /> 
           </DataTemplate> 
          </ListViewItemTemplate> 
         </ListView> 

これは私の結果である: image my result

私が見たいです線の始まり、青の境界線、およびあなたは、Visual Studioのデザイナで見るように2つのStackPanel: image my designer

答えて

1

Stretchに各ListViewItemHorizontalContentAlignmentを設定してみてください。 Padding0と設定して、青いバーの前にある隙間を取り除いてください。

<ListView x:Name="listaContatti" 
    IsItemClickEnabled="True" MaxHeight="200" 
    SelectedItem="{Binding ClientiContatti,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" 
    ItemsSource="{Binding ListaClientiContatti,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <template:ItemTemplateContatti /> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
    <ListView.ItemContainerStyle> 
     <Style TargetType="ListViewItem"> 
      <Setter Property="HorizontalContentAlignment" Value="Stretch" /> 
      <Setter Property="Padding" Value="0" /> 
     </Style> 
    </ListView.ItemContainerStyle> 
</ListView> 
+0

ありがとうございます、しかし、境界タグは、最初に表示されませんが、さらにいくつかのピクセル、なぜですか? –

+0

私はこれに関する詳細な情報で私の答えを編集しました。 –

+0

ありがとう:ヘルプのD –

関連する問題