, ( ), ItemsControl, .
XAML
<ItemsControl x:Name="ic">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Image Stretch="None" Source="{Binding First}" />
<Image Stretch="None" Source="{Binding Second}" Grid.Column="1" />
<Image Stretch="None" Source="{Binding Third}" Grid.Column="2" />
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
#
public MainPage()
{
InitializeComponent();
var URLs = new List<Uri>
{
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png"),
new Uri("http://i.imgur.com/SG8KZCh.png")
};
var GroupedURLs = new List<ImageViewModel>();
for (int i = 0; i < URLs.Count; i=i+3)
{
var objImageViewModel = new ImageViewModel();
if (URLs.ElementAtOrDefault(i) != null)
{
objImageViewModel.First = URLs[i];
}
if (URLs.ElementAtOrDefault(i + 1) != null)
{
objImageViewModel.Second = URLs[i + 1];
}
if (URLs.ElementAtOrDefault(i + 2) != null)
{
objImageViewModel.Third = URLs[i + 2];
}
GroupedURLs.Add(objImageViewModel);
}
ic.ItemsSource = GroupedURLs;
}
public class ImageViewModel
{
public Uri First { get; set; }
public Uri Second { get; set; }
public Uri Third { get; set; }
}