在WPF中动态加载和显示图像集合

时间:2014-04-29 09:04:18

标签: c# .net wpf telerik

我正在使用Telerik WPF控件但我会感谢任何可能有用的建议。 我实际上有一个 GridView RadGridView RadGridView.RowDetailsTemplate ,但这并不重要)。我还有一个图像集合(它实际上是一个 ICollection ,其中这个集合的项目是相对于图像的Uris)。如果我的集合中有一定数量的图像,一切正常,因为我可以在我的视图(XAML)中创建固定数量的图像控件,并为集合中的每个图像创建一个绑定每个图片控件。

我想创建一个迷你画廊。问题是如何生成非固定数量的图像控件以显示在我的 GridView.RowDetails 中(或告诉我是否有其他方式显示列表图像)在运行时。我想知道是否有很少的方法可以做到这一点(即通过XAML和代码中的绑定。

提前谢谢。

1 个答案:

答案 0 :(得分:2)

我将使用CellTemplate来执行此操作。

基本上,您需要一个ImageSource / Uri的集合,它将是ItemsSource / DataGrid的{​​{1}}。此集合应实施RadGridViewINotifyCollectionChanged,例如INotifyPropertyChanged。因此,您可以动态构建此集合,并在Xaml中绑定ObservableCollection<T>的{​​{1}}属性。

示例代码

请注意,此处的示例代码适用于 MS Source,但Telerik Image具有类似的界面,因此您可以轻松修改代码。

在Xaml中,您可以拥有以下内容:

DataGrid

C#代码就像:

RadGridView