我正在尝试创建一个自定义单元,但是当我运行该应用并导航到应该放置其ListView
的页面时,我得到了一个NullReferenceException
,但没有更多详细信息过去吧我可能也做错了,因为非常缺少使用XAML创建自定义单元的文档。此外,我是Xamarin的新手。
这就是我想要做的:
TestViewCell.xaml
<?xml version="1.0" encoding="UTF-8"?>
<ViewCell xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="MovieDbApp.UI.TestViewCell">
<ViewCell.View>
<StackLayout>
<Label Text="{Binding Title}"/>
</StackLayout>
</ViewCell.View>
</ViewCell>
TestViewCell.xaml.cs(不确定这是对的...)
public partial class TestViewCell : ViewCell
{
public static readonly BindableProperty TitleProperty =
BindableProperty.Create("Title", typeof(string), typeof(TestViewCell ),"");
public string Title
{
get { return (string)GetValue(TitleProperty); }
set { SetValue(TitleProperty, value); }
}
}
TestViewCellPage.xaml
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:MovieDbApp.UI"
x:Class="MovieDbApp.View.TestViewCellPage">
<ContentPage.Content>
<StackLayout>
<ListView x:Name="listView">
<ListView.ItemTemplate>
<DataTemplate>
<local:TestViewCell Title="{Binding Title}"/>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
</ContentPage.Content>
</ContentPage>
Intellisense将为我自动完成TestViewCellPage.xaml中的“标题”属性,但是应用程序在运行时会抛出NullReferenceException
。我在这里想念什么?