【发布时间】:2017-01-05 05:08:24
【问题描述】:
我正在尝试在 Xamarin Forms 中使用 ListView,我有一个列表,我必须根据日期对其进行划分
var activitiesServices = new ActivitiesServices();
var activities = activitiesServices.GetActivities();
var dataTemplate = new DataTemplate(typeof(TextCell));
dataTemplate.SetBinding(TextCell.TextProperty, "Subject");
var list = new ObservableCollection<Activity>();
var list2 = new ObservableCollection<Activity>();
var list3 = new ObservableCollection<Activity>();
var list4 = new ObservableCollection<Activity>();
var list5 = new ObservableCollection<Activity>();
foreach (Activity item in activities) {
var day = item.StartTime.DayOfWeek;
switch ((int)day) {
case 1:
list.Add(item);
break;
case 2:
list2.Add(item);
break;
case 3:
list3.Add(item);
break;
case 4:
list4.Add(item);
break;
case 5:
list5.Add(item);
break;
default:
break;
}}
到这里为止一切顺利,但是当我尝试填充主列表视图(在 xaml 中定义)时,它给了我一个错误:
if (list.Count != 0) {
monday.ItemsSource = list;
monday.ItemTemplate = dataTemplate;
}
if (list2.Count != 0) {
tuesday.ItemsSource = list2;
tuesday.ItemTemplate = dataTemplate;
}
if (list3.Count != 0) {
wednesday.ItemsSource = list3;
wednesday.ItemTemplate = dataTemplate;
}
if (list5.Count != 0) {
friday.ItemsSource = list5;
friday.ItemTemplate = dataTemplate;
}
if (list4.Count != 0) {
thursday.ItemsSource = list4;
thursday.ItemTemplate = dataTemplate;
}
这是错误:System.NullReferenceException:对象引用未设置为对象的实例。
【问题讨论】:
-
请在 XAML 中显示
ListView的定义 -
就是这么简单
-
你应该对你的 ListView 进行分组。 James Montemagno 的精彩解释:motzcod.es/post/94643411707/…
-
好的,谢谢,我试试
-
你能详细说明什么是 NULL 吗?