【发布时间】:2018-04-30 05:26:48
【问题描述】:
我有一个自定义视图,我试图将其作为List<T> 传递给。出于某种原因,在尝试加载页面时,应用会抛出 System.ArrayTypeMismatchException。
这是课程:
public class DiaryCalendarCustomView : View
{
MiscFunctions misctools = new MiscFunctions();
private List<DiaryNextContactEventModel> _eventList = new List<DiaryNextContactEventModel>();
public List<DiaryNextContactEventModel> EventList
{
get { return _eventList; }
set { _eventList = value; }
}
public void SetSelectedDate (DateTime selectedDate)
{
SelectedDate = selectedDate;
Settings.Current.NextContactContactDate = selectedDate.ToLocalTime();
}
public DateTime SelectedDate { get; set; }
public DiaryCalendarCustomView()
{
}
}
查看模型:
private List<DiaryNextContactEventModel> _eventList = new List<DiaryNextContactEventModel>();
public List<DiaryNextContactEventModel> EventList
{
get { return _eventList; }
set { SetProperty(ref _eventList, value); }
}
当我将静态数据添加到 EventList 对象时,它可以正常工作,当我从 XAML 视图中删除绑定时,它也可以正常工作。所以问题似乎是 xamarin 试图将我的列表转换为另一种类型的可枚举,这就是它失败的地方。
XAML:
<Grid VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
<Grid.Children>
<partials:DiaryCalendarCustomView EventList="{Binding EventList}"/>
</Grid.Children>
</Grid>
调试和搜索并没有真正提供任何有用的东西。任何帮助将不胜感激。
【问题讨论】:
标签: mvvm xamarin.forms prism