2016-04-16 9 views
0

Ich habe eine einfache Test-App, die ich verwende, um meine ListView-Probleme herauszufinden. Ich habe zwei Dinge, die ich über das hinaus erreichen muss, was ich jetzt habe. 1. Ermitteln Sie, dass der Abstand zwischen ListViewItems kleiner als der Standardwert ist. Ich kann nicht herausfinden, wo das gestylt ist. 2. Ich habe IsEnabled = "False" und das bringt mir das Verhalten, das ich will, kann der Benutzer nicht mit der Kontrolle interagieren. Aber ich möchte nicht, dass der Artikel verblasst. Ich frage mich, welches Attribut ich anpassen muss, um dies zu ermöglichen.UWP ListView, wie man Artikelhöhe steuert - Bereich um das ListViewItem

Danke für jede Hilfe!

<Grid x:Name="GridBase" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" MinWidth="400"> 
    <Grid Margin="30,20" Background="LightGray"> 
     <ListView x:Name="MyList" ItemsSource="{Binding SourceData}" HorizontalContentAlignment="Stretch" HorizontalAlignment="Stretch" IsItemClickEnabled="False" Width="{Binding ElementName=GridBase,Path=Width}" MinWidth="400" MaxWidth="1200" IsEnabled="False"> 
      <ListView.ItemContainerStyle> 
       <Style TargetType="ListViewItem"> 
        <Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter> 
        <Setter Property="HorizontalAlignment" Value="Stretch"/> 
        <Setter Property="Padding" Value="0,0"/> 
       </Style> 
      </ListView.ItemContainerStyle> 
      <ListView.Header> 
       <Style TargetType="ListViewHeaderItem"> 
        <Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter> 
        <Setter Property="HorizontalAlignment" Value="Stretch"/> 
       </Style> 
      </ListView.Header> 
      <ListView.HeaderTemplate> 
       <DataTemplate> 
        <Grid Background="LightGreen" HorizontalAlignment="Stretch" Width="{Binding ElementName=MyList,Path=Width}"> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition Width="80"/> 
          <ColumnDefinition Width="2*"/> 
          <ColumnDefinition Width="2*"/> 
          <ColumnDefinition Width="2*"/> 
          <ColumnDefinition Width="40"/> 
          <ColumnDefinition Width="2*"/> 
          <ColumnDefinition Width="6*"/> 
          <ColumnDefinition Width="40"/> 
          <ColumnDefinition Width="2*"/> 
         </Grid.ColumnDefinitions> 
         <TextBlock Grid.Column="0" Text="Col1" HorizontalAlignment="Left"/> 
         <TextBlock Grid.Column="1" Text="Col2" HorizontalAlignment="Left"/> 
         <TextBlock Grid.Column="2" Text="Col3" HorizontalAlignment="Center"/> 
         <TextBlock Grid.Column="3" Text="Col4" HorizontalAlignment="Left"/> 
         <TextBlock Grid.Column="4" Text="Col5" HorizontalAlignment="Center"/> 
         <TextBlock Grid.Column="5" Text="Col6" HorizontalAlignment="Left"/> 
         <TextBlock Grid.Column="6" Text="Col7" HorizontalAlignment="Center"/> 
         <TextBlock Grid.Column="7" Text="Col8" HorizontalAlignment="Center"/> 
         <TextBlock Grid.Column="8" Text="Col9" HorizontalAlignment="Left"/> 
        </Grid> 
       </DataTemplate> 
      </ListView.HeaderTemplate> 
      <ListView.ItemTemplate> 
       <DataTemplate> 
        <Grid HorizontalAlignment="Stretch" Background="Aquamarine" Width="{Binding ElementName=MyList,Path=Width}"> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition Width="80"/> 
          <ColumnDefinition Width="2*"/> 
          <ColumnDefinition Width="2*"/> 
          <ColumnDefinition Width="2*"/> 
          <ColumnDefinition Width="40"/> 
          <ColumnDefinition Width="2*"/> 
          <ColumnDefinition Width="6*"/> 
          <ColumnDefinition Width="40"/> 
          <ColumnDefinition Width="2*"/> 
         </Grid.ColumnDefinitions> 
         <TextBlock Grid.Column="0" Text="{Binding Column1}" HorizontalAlignment="Left"/> 
         <TextBlock Grid.Column="1" Text="{Binding Column2}" HorizontalAlignment="Left"/> 
         <TextBlock Grid.Column="2" Text="{Binding Column3}" HorizontalAlignment="Center"/> 
         <TextBlock Grid.Column="3" Text="{Binding Column4}" HorizontalAlignment="Left"/> 
         <TextBlock Grid.Column="4" Text="{Binding Column5}" HorizontalAlignment="Center"/> 
         <TextBlock Grid.Column="5" Text="{Binding Column6}" HorizontalAlignment="Left"/> 
         <TextBlock Grid.Column="6" Text="{Binding Column7}" HorizontalAlignment="Center"/> 
         <TextBlock Grid.Column="7" Text="{Binding Column8}" HorizontalAlignment="Center"/> 
         <TextBlock Grid.Column="8" Text="{Binding Column9}" HorizontalAlignment="Left"/> 
        </Grid> 
       </DataTemplate> 
      </ListView.ItemTemplate> 
     </ListView> 
    </Grid> 
</Grid> 

Antwort

0

Wenn Sie den Abstand zwischen Listviewitem wollen den Standard auf weniger als und Sie sollten die ListViewItem Marge machen und die oberen oder Buttom weniger machen.

0

zu 1. lösen Sie können nur den Rand des ListViewItem anpassen, indem

<Setter Property="Margin" Value="-10,-10,-10,-10"/> 

zum <Style TargetType="ListViewItem">

Hinzufügen 2. Set IsHitTestVisible="False" in Ihrem Listview zu lösen.

+0

Super, vielen Dank! –

Verwandte Themen