我想为每个项目添加不同颜色的矩形,但我知道如何做到这一点。
我的XAML代码
<ListView x:Name="listView1">
<ListView.ItemTemplate>
<DataTemplate x:DataType="x:String">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="47"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Rectangle Fill="Red" Width="32" Height="32"
HorizontalAlignment="Left"/>
<TextBlock Text="{x:Bind}" Foreground="Black"
FontSize="15" Grid.Column="1"/>
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
<x:String>White</x:String>
<x:String>Red</x:String>
<x:String>Yellow</x:String>
<x:String>Blue</x:String>
<x:String>Green</x:String>
<x:String>Grey</x:String>
<x:String>Black</x:String>
</ListView>
答案 0 :(得分:0)
您目前有一个DataTemplate引用的颜色始终为Red
- 无论您的绑定值如何,Rectangle
&#39; s Fill
仍为{ {1}}根据您的标记。
要解决此问题,您应将Red
替换为<Rectangle Fill="Red" Width="32" Height="32" HorizontalAlignment="Left"/>
。
新<Rectangle Fill="{x:Bind}" Width="32" Height="32" HorizontalAlignment="Left"/>
会将您在下方设置的相关{x:Bind}
引入<x:String>
的{{1}}媒体资源中,结果意味着您会看到正确的颜色。