2017-09-10 10 views
1

ItemsWrapGridをパネルテンプレートとして使用して、ListView内のアイテムのリストを基本的に表示する単純なレイアウトがあります。私が抱えている問題は、リストビューの最初の画像は、固定幅/高さの設定でも、常に残りの部分よりも大きいことです。私は完全に困惑しています。C#UWP - ListView内の最初のイメージのサイズが正しくありません

問題の画像:

Image

リストビューXAMLである:

<ListView ItemsSource="{Binding Currencies}" ItemTemplate="{StaticResource PortfolioCurrencyTemplate}"> 
    <ListView.ItemsPanel> 
     <ItemsPanelTemplate> 
      <ItemsWrapGrid Orientation="Horizontal" Width="Auto" Height="Auto"/> 
     </ItemsPanelTemplate> 
    </ListView.ItemsPanel> 
</ListView> 

データテンプレート:代わりListViewを使用しItemsPanelTemplateへの変更

<Page.Resources> 
    <DataTemplate x:Key="PortfolioCurrencyTemplate" x:DataType="viewModels:PortfolioViewModel"> 
     <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" 
       BorderBrush="Black" 
       BorderThickness="1" 
       CornerRadius="2" 
       Padding="10"> 

      <Grid.RowDefinitions> 
       <RowDefinition Height="Auto" /> 
       <RowDefinition Height="Auto"/> 
       <RowDefinition Height="Auto"/> 
      </Grid.RowDefinitions> 

      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="1*" /> 
       <ColumnDefinition Width="2*" /> 
      </Grid.ColumnDefinitions> 

      <Image Grid.Column="0" Grid.Row="0" Grid.RowSpan="2" Grid.ColumnSpan="1" MaxWidth="100" MaxHeight="100" Source="https://www.cryptocompare.com/media/19633/btc.png"/> 

      <TextBlock Grid.Column="1" Grid.Row="0" Text="{Binding Name}" VerticalAlignment="Center"/> 
      <TextBlock Grid.Column="1" Grid.Row="1" Text="{Binding Symbol}" VerticalAlignment="Center"/> 
      <TextBlock Grid.Column="1" Grid.Row="2" Text="{Binding LastPrice}" VerticalAlignment="Center"/> 

     </Grid>    
    </DataTemplate> 
</Page.Resources> 

答えて

1

GridView Efを作成する問題を一つ一つ解決するには、AdaptiveGridViewに切り替えることをお勧めします。あなたのページに名前空間の下に

xmlns:controls="using:Microsoft.Toolkit.Uwp.UI.Controls" 

を追加Here

からUWP Community ToolkitためNugetパッケージをインストールすることができます

今、あなたのListViewは、以下のように交換する必要があります。

<controls:AdaptiveGridView ItemsSource="{Binding Currencies}" 
          ItemTemplate="{StaticResource PortfolioCurrencyTemplate}" 
          DesiredWidth="250"/> 

デザイナーからの出力

enter image description here

グッドラック。

関連する問題