我的列表視圖中不顯示綁定到它 askind求救數據我在這裏給爲例,用於顯示只有一個元素 我想知道哪裏是我的代碼 pleese問題幫我:(我的ListView不顯示我的數據
這裏是我的代碼:
<ListView ItemsSource="{Binding Path=MovieData}">
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding Path=MovieId}" Header="Movie Id" />
<GridViewColumn DisplayMemberBinding="{Binding Path=Title}" Header="Title" />
<!-- Can Bind to complex subclass -->
<GridViewColumn Header="Movie(s)">
<GridViewColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<ItemsControl ItemsSource="{Binding Path=MovieImage}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<!-- Binding with data triggers -->
<!-- Simple binding -->
<GridViewColumn DisplayMemberBinding="{Binding Path=Recommendation}" Header="Recommendations" />
</GridView>
</ListView.View>
</ListView>
,這裏是我的課的電影:
public class Movie
{
public int MovieId { get; set; }
public string Title { get; set; }
public BitmapImage MovieImage { get; set; }
public string Recommendation { get; set; }
public Movie() { }
public void CreateMovie(int i, string T , string R)
{
MovieId = i;
Title = T;
Recommendation = R;
BitmapImage bi = new BitmapImage();
bi.BeginInit();
bi.UriSource = new Uri(@"http://pierre.chachatelier.fr/programmation/images/mozodojo-original-image.jpg");
bi.EndInit();
MovieImage = bi;
}
}
在這裏,我只需要添加一個元素測試:
public List<Movie> MovieData= new List<Movie>();
Movie m = new Movie();
m.CreateMovie(5, "d", "s");
MovieData.Add(m);
我覺得你MovieData清單必須是一個ObservableCollection,不是List爲了在對象被添加到它時得到通知。 –
michele
2013-03-07 10:53:33
你會解釋更多嗎? – sansa 2013-03-07 10:57:26
看到http://immersivenick.wordpress.com/2012/02/04/wpf-short-observablecollection-inotifypropertychanged-2/或谷歌ObservableCollection – ZSH 2013-03-07 11:02:49