我正在为我的Windows应用程序创建一个长列表选择器
所以我有一堂球员课
Player.cs
public class Player
{
public string FirstName
{
get;
set;
}
public string LastName;
public int Age;
public int Rank;
public string RankDescreption;
}在这里,XAML:
<phone:LongListSelector Name="playersList" HorizontalAlignment="Left" VerticalAlignment="Top" LayoutMode="List" IsGroupingEnabled="False" Width="446" Margin="24,224,0,-10" Height="639"> <phone:LongListSelector.ItemTemplate> <DataTemplate> <StackPanel> <TextBlock Text="{Binding FirstName}" /> </StackPanel> </DataTemplate> </phone:LongListSelector.ItemTemplate> </phone:LongListSelector>
在页面的构造函数中:
public SelectProfile()
{
ObservableCollection<Player> players = new ObservableCollection<Player>();
players.Add(new Player { FirstName = "Waseem" });
players.Add(new Player { FirstName = "Waseem2" });
players.Add(new Player { FirstName = "Waseem3" });
players.ItemsSource = players; // assigning data
InitializeComponent();
}在调试应用程序时,我将集合的数据分配给LongListSelector的Item Source,它与NullReferenceException一起在players.ItemsSource = players;崩溃
我做错什么了?
发布于 2014-05-03 03:28:38
在ItemsSource之后分配InitializeComponent
public SelectProfile()
{
InitializeComponent();
ObservableCollection<Player> players = new ObservableCollection<Player>();
players.Add(new Player { FirstName = "Waseem" });
players.Add(new Player { FirstName = "Waseem2" });
players.Add(new Player { FirstName = "Waseem3" });
players.ItemsSource = players; // assigning data
}发布于 2014-05-03 05:21:22
对错误的解释要多一点。
获得空引用错误的原因是在加载xaml之前分配长列表选择器的项源。
在构造函数的运行时,第一步应该初始化component.this方法,加载xaml页面中的所有xaml组件。一旦xaml成功加载(执行了initalize组件),您就可以在xaml.cs页面中引用这些控件。
https://stackoverflow.com/questions/23439860
复制相似问题