Хорошо, поэтому я попытался реализовать поток покрытия, найденный в codeplex http://silverlightcoverflow.codeplex.com/
Я хотел использовать свой собственный класс для привязки данных:
class CoverItem
{
BitmapImage _image;
string _title;
string _link;
string _content;
public BitmapImage Image
{
get { return _image; }
set { _image = value; }
}
public string Title
{
get { return _title; }
set { _title = value; }
}
public string Link
{
get { return _link; }
set { _link = value; }
}
public string Content
{
get { return _content; }
set { _content = value; }
}
}
Это XAML дляпользовательский элемент управления Cover из codeplex:
<custom:CoverFlowControl.ItemTemplate>
<DataTemplate>
<StackPanel>
<Image Source="{Binding Image}" Width="300" />
<TextBlock Text="{Binding Title}" Width="300" />
<TextBlock Text="Testing" Width="300" />
</StackPanel>
</DataTemplate>
</custom:CoverFlowControl.ItemTemplate>
Проблема, с которой я сталкиваюсь, заключается в том, что я получаю слово «Тестирование» для каждого элемента, который был связан, но я не получаю изображение или заголовок, полученные от моегообъекты, которые прикреплены к свойству ItemSource элемента управления.
Covers.ItemsSource = _items;
Мой вопрос: где я ошибаюсь?Это должно быть простым связыванием, поэтому подумайте, что я что-то упустил.
Заранее спасибо за помощь.
РЕДАКТИРОВАТЬ:
Если я изменю код на это:
List<BitmapImage> images = new List<BitmapImage>() { _items[0].Image, _items[1].Image, _items[2].Image, _items[3].Image };
Covers.ItemsSource = images;// _items;
И тогда привязка будет такой:
<Image Source="{Binding}" Width="300" />
Теперь я получаю отображение своих изображений.Так что я знаю, что это проблема с привязкой где-то.
Также пробовал
<Image Source="{Binding Path=Image}" Width="300" />