1
我在使用WPF中的DataGrid控件時出現了一個非常奇怪的問題。在代碼中設置DataGrid的ItemsSource後,將生成行,但單元格完全是空的!在使用DataGrids之前,我從來沒有遇到過這個問題,並且我知道綁定正在工作,因爲我有另一個類似的應用程序,它在那裏工作。此外,我試圖讓它自動爲我生成我的列,它仍然無法正常工作,實際上甚至沒有列生成。下面是我在XAML中的DataGrid,我的代碼來填充DataGrid和我的模型。WPF Datagrid單元格爲空
注:FindMoviesByName返回MovieInfo []
<DataGrid x:Name="dgdMovies" AutoGenerateColumns="False" MaxHeight="450"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Auto">
<DataGrid.Columns>
<DataGridTextColumn Header="Movie Title" Width="150" Binding="{Binding Title}"></DataGridTextColumn>
<DataGridTextColumn Header="IMDB Location" Width="150" Binding="{Binding ImdbUrl}"></DataGridTextColumn>
<DataGridTextColumn Header="Genre" Width="150" Binding="{Binding Genre}"></DataGridTextColumn>
<DataGridTextColumn Header="MPAA Rating" Width="150" Binding="{Binding MpaaRating}"></DataGridTextColumn>
<DataGridTextColumn Header="Personal Rating" Width="150" Binding="{Binding PersonalRating}"></DataGridTextColumn>
<DataGridTextColumn Header="Critics Rating" Width="150" Binding="{Binding CriticsRating}"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
var results = _updateService.FindMoviesByName(txtSearch.Text);
lblResults.Content = results.Length + " Results!";
dgdMovies.ItemsSource = results;
[DataContract]
public class MovieInfo
{
[DataMember] public string Title;
[DataMember] public string ImdbUrl;
[DataMember] public Genre Genre;
[DataMember] public MpaaRating MpaaRating;
[DataMember] public int CriticsRating;
[DataMember] public int PersonalRating;
}
謝謝,我很笨。我正準備在筆記本電腦上打一個洞,因爲那個綁定正在處理我的其他應用程序,但不是這個。我猜這是因爲其他應用程序對該模型提供了服務引用。 – Sathariel 2011-04-29 01:36:25
不要感覺不好。你不是第一個被這個咬人的人。 – 2011-04-29 01:39:29
我被咬了......謝謝:) – 2014-01-25 21:08:21