如何在Windows Phone 8.1中将图标和背景颜色设置为Combox项目

时间:2015-05-16 19:49:58

标签: c# windows-phone-8.1

我想在Windows Phone 8.1应用程序中改进Combobox项目的布局。默认情况下,组合框项目将是这样的:

enter image description here

我想为每个项目设置一个图标和背景,这取决于插入的对象的属性(如果没有问题可能是绿色,如果不是,则为橙色,出现错误时为红色) 。我能怎么做 ?所以我想要这样的东西,其中蓝色背景也将针对特定情况设置(前面的例子应该清楚)。 enter image description here

1 个答案:

答案 0 :(得分:1)

您可以通过为ComboBox项使用DataTemplate来实现这一点。您可能必须使用转换器作为背景颜色。

<ComboBox ItemsSource="{Binding ListOfProperties}" SelectedValuePath="Id">
    <ComboBox.ItemTemplate>
        <DataTemplate>
            <Grid Background="{Binding ColorName, Converter={StaticResource StringToBrushConverter}">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition/>
                    <ColumnDefinition/>
                </Grid.ColumnDefinitions>
                <Image Source="{Binding ImageUrl}"/> // "ms-appx:///Assets/image.png" for example
                <TextBlock Grid.Column="1" Text="{Binding Text}"/>
            </Grid>
        </DataTemplate>
    </ComboBox.ItemTemplate>
</ComboBox>