В этом примере цвет, если он хранится в классе с именем ListItems, который определен как:
public class ListItems
{
public string name { get; set; }
public string color { get; set; }
}
Наблюдаемая совокупность типа ListItems добавляется в код позади файла MainPage:
public partial class MainPage : PhoneApplicationPage
{
ObservableCollection<ListItems> items = new ObservableCollection<ListItems>();
// Constructor
public MainPage()
{
InitializeComponent();
items.Add(new ListItems() { name = "Item 1", color = "Red" });
items.Add(new ListItems() { name = "Item 2", color = "Blue" });
items.Add(new ListItems() { name = "Item 3", color = "Green" });
items.Add(new ListItems() { name = "Item 4", color = "White" });
items.Add(new ListItems() { name = "Item 5", color = "Purple" });
DataContext = this;
listBox1.ItemsSource = items;
}
}
}
И элементы типа ListItem добавляются в наблюдаемую коллекцию.
В этом случае файл MainPage.xaml будет содержать поле со списком, привязанный к которому ItemTemplate будет привязан ксвойства класса ListItem:
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<ListBox HorizontalAlignment="Left" Margin="12" Width="400" Height="400" Name="listBox1" VerticalAlignment="Top" >
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock x:Name="Item" Text="{Binding name}" FontFamily="Arial" FontSize="40" Foreground="{Binding color}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
Готовая страница выглядит следующим образом:
Надеюсь, это поможет.