我在用戶控件背後的代碼中創建了ObservableCollection。xaml中的WPF ObservableCollection
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
Entities db = new Entities();
ObservableCollection<Image> _imageCollection =
new ObservableCollection<Image>();
IEnumerable<library> libraryQuery =
from c in db.ElectricalLibraries
select c;
foreach (ElectricalLibrary c in libraryQuery)
{
Image finalImage = new Image();
finalImage.Width = 80;
BitmapImage logo = new BitmapImage();
logo.BeginInit();
logo.UriSource = new Uri(c.url);
logo.EndInit();
finalImage.Source = logo;
_imageCollection.Add(finalImage);
}
}
我需要是基於保存在數據庫中的URL創建的圖像的ObservableCollection:當窗口負載創建它。但我需要一個ListView或其他的ItemsControl綁定到它在XAML文件是這樣的:
但我無法弄清楚如何將的ObservableCollection傳遞給控制的ItemsSource。我試圖創建一個類,然後在xaml文件中創建一個類的實例,但它不起作用。我應該創建一個靜態資源以某種方式>
任何幫助將不勝感激。
除了您可能想要添加更多細節並修復一個小問題外,技術上正確 - * ObservableCollection *已經實現了* INotifyCollectionChanged *和* INotifyPropertyChanged *,因此不需要在您提及的公共屬性上重新實現/調用它們。 – slugster 2010-06-16 10:35:49
謝謝你的幫助。你能提供一些小小的代碼嗎? – Enzomatric 2010-06-16 10:39:14
@slugster - 抱歉,我的回覆不清楚。我提到INotifyPropertyChanged的原因純粹是爲了更新列表,如果作者自己的公共屬性重新初始化。我可能不應該添加這種多餘的信息... @Cloverness - 添加示例... – 2010-06-16 10:46:25