2016-07-07 5 views
0

私はWindows用Universal Windowsプラットフォームアプリケーションで作業しています。10.I listviewに関する問題があります。リストビュー項目をクリックしてホバーすると選択された領域の背景が大きくなります。あなたは私のイメージで見ることができます。Xaml(UWP-Universal windowsプラットフォーム)のListviewの下部と上部のスペースを減らす

コード:

<ListView Height="160" Name="lstconfig_option" BorderThickness="0" BorderBrush="#FFB0B7BE" ItemClick="lstconfig_option_ItemClick" IsItemClickEnabled="True" HorizontalAlignment="Stretch"> 
            <ListView.ItemsPanel> 
             <ItemsPanelTemplate> 
              <WrapGrid Orientation="Horizontal" MaximumRowsOrColumns="10"/> 
             </ItemsPanelTemplate> 
            </ListView.ItemsPanel> 
            <ListView.ItemContainerStyle> 
             <Style TargetType="ListViewItem"> 
              <Setter Property="HorizontalContentAlignment" Value="Left" /> 
              <Setter Property="VerticalContentAlignment" Value="Center" /> 
              <Setter Property="Margin" Value="0,0,0,0" /> 
              <Setter Property="Padding" Value="0,0,0,-6" /> 
              <Setter Property="Template"> 
               <Setter.Value> 
                <ControlTemplate TargetType="ListViewItem"> 
                 <ListViewItemPresenter   
            PointerOverBackground="{ThemeResource SystemControlHighlightListLowBrush}"  
            SelectedBackground="{ThemeResource SystemControlHighlightListMediumBrush}"  
            SelectedPointerOverBackground="{ThemeResource SystemControlHighlightListMediumBrush}" 
           PressedBackground="{ThemeResource SystemControlHighlightListMediumBrush}" 
           SelectedPressedBackground="{ThemeResource SystemControlHighlightListMediumBrush}" /> 
                </ControlTemplate> 
               </Setter.Value> 
              </Setter> 


             </Style> 
            </ListView.ItemContainerStyle> 

            <ListView.ItemTemplate> 
             <DataTemplate > 
              <StackPanel Grid.Row="1" Height="auto" HorizontalAlignment="Stretch" PointerEntered="btnFilter_PointerEntered" PointerExited="btnFilter_PointerExited" ToolTipService.ToolTip="{Binding tooltip_text}" ToolTipService.Placement="Bottom"> 
               <Grid Height="auto"> 
                <Grid.ColumnDefinitions> 
                 <ColumnDefinition Width="*"></ColumnDefinition> 
                 <ColumnDefinition Width="auto"></ColumnDefinition> 
                </Grid.ColumnDefinitions> 

                <StackPanel Grid.Column="0" Grid.ColumnSpan="2" Width="200" VerticalAlignment="Top" HorizontalAlignment="Left"> 
                 <TextBlock Name="common_label" Text="{Binding label}" Visibility="{Binding label_Visibility}" FontSize="11" Foreground="#FF0D0C0C" Margin="10,0,0,0" VerticalAlignment="Center" Grid.ColumnSpan="2" SelectionHighlightColor="#FFD44C21" /> 
                 <TextBox Name="textbox" Visibility="{Binding Visibility}" FontSize="11" Foreground="#FF0D0C0C" TextWrapping="NoWrap" VerticalAlignment="Center" Margin="10,0,0,0" Grid.ColumnSpan="2" BorderBrush="Black" Background="#FFF6F6F6" HorizontalAlignment="Stretch" SelectionHighlightColor="#FFD44C21"/> 
                </StackPanel> 

               </Grid> 
              </StackPanel> 
             </DataTemplate> 
            </ListView.ItemTemplate> 
           </ListView> 

画像

my list view image

+0

これはおそらくあなたのTextBlockとテキストボックスのマージンプロパティによって引き起こされ、また、あなたのパディングプロパティアイテム。 –

+0

@DarkTemplar:はい、私は知っていますが、私はテキストブロック上に余白を与えませんでした。 –

+0

データテンプレートを確認してください –

答えて

3

ListViewItemは、デフォルトではMinWidthMinHeightを持っています。 ListViewItem styles and templatesをチェックすると、MinWidthMinHeightのプロパティが次のように指定されています。

<Setter Property="MinWidth" Value="{ThemeResource ListViewItemMinWidth}"/> 
<Setter Property="MinHeight" Value="{ThemeResource ListViewItemMinHeight}"/> 

<x:Double x:Key="ListViewItemMinWidth">88</x:Double> 
<x:Double x:Key="ListViewItemMinHeight">44</x:Double> 

ギャップを減らすために、あなたが好きな希望値にMinHeightを設定することができます。

<ListView.ItemContainerStyle> 
    <Style TargetType="ListViewItem"> 
     <Setter Property="HorizontalContentAlignment" Value="Left" /> 
     <Setter Property="VerticalContentAlignment" Value="Center" /> 
     <Setter Property="Margin" Value="0,0,0,0" /> 
     <Setter Property="Padding" Value="0,0,0,-6" /> 
     <Setter Property="MinHeight" Value="20" /> 
     ... 
    </Style> 
</ListView.ItemContainerStyle> 
関連する問題