2016-09-03 7 views
0
<Grid Grid.Row="3" HorizontalAlignment="Stretch"> 
       <ListView x:Name="lvAlert" HorizontalAlignment="Stretch"> 
        <ListView.ItemTemplate> 
         <DataTemplate> 
          <Grid> 
           <Grid.ColumnDefinitions> 
            <ColumnDefinition Width="70*"/> 
            <ColumnDefinition Width="30*"/> 
           </Grid.ColumnDefinitions> 
           <Grid Grid.Column="0" Background="{Binding ColorValue }" > 
            <TextBlock Text="{Binding AlertType}" Foreground="White" Height="35" HorizontalAlignment="Stretch"/> 
           </Grid> 
           <Grid Grid.Column="1" Background="{Binding ColorValue }" > 
            <TextBlock Text="{Binding AlertTypeValue}" Foreground="Black" Height="35" HorizontalAlignment="Stretch"/> 
           </Grid> 
           <TextBlock Grid.Column="0" Text="{Binding AlertType}" Foreground="{Binding ColorValue }" Width="400" Height="40"/> 
           <TextBlock Grid.Column="1" Text="{Binding AlertTypeValue}" Foreground="{Binding ColorValue }" Width="400" Height="40"/> 
          </Grid> 
         </DataTemplate> 
        </ListView.ItemTemplate> 
       </ListView> 
      </Grid> 

上記のコードを実行すると、70%と30%で正しく分離されずに出力が1行で得られます。誰もこれを解決することはできますか?ListViewのグリッドをUWPで分割する方法

答えて

0

デフォルトでは、ListViewのアイテムは水平方向に伸縮しませんが、左側に貼り付けられます。

あなたの問題は、このコードによって解決されるべきである。

<ListView.ItemContainerStyle> 
    <Style TargetType="ListViewItem"> 
     <Setter Property="HorizontalContentAlignment" 
       Value="Stretch" /> 
    </Style> 
</ListView.ItemContainerStyle> 
0

私は70%と30%で適切な分離を得ることなく、単一の行のように出力を得た上でコードを実行すると。誰もこれを解決することはできますか?

それはColumnDefinitionsHeightではなく70*30*7*3*を設定する必要があるためです。

グリッドの使用方法の詳細については
<Grid.ColumnDefinitions> 
    <ColumnDefinition Width="7*"/> 
    <ColumnDefinition Width="3*"/> 
</Grid.ColumnDefinitions> 

、あなたがGird Classを参照することができます。

関連する問題