我在Xamarin Studio(Mac)中构建,每次构建时我都会收到“Sequence contains no elements”错误。可能是什么问题?
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"
x:Class="AJInspector.MenuPage"
Padding="10"
BackgroundColor="Gray"
Title="Inspector Menu">
<ContentPage.Content>
<StackLayout Margin="5,30,5,5">
<Label Text="AInspector Menu">
</Label>
<SearchBar Placeholder="search" PlaceholderColor="Gray" HorizontalOptions="Center" SearchButtonPressed="Find_SearchButtonPressed" >
</SearchBar>
<Button Text="Inspect" BackgroundColor="Lime" Clicked="FormA_Clicked">
</Button>
<Button Text="+ Client Record" BackgroundColor="Silver" Clicked="AddVehicle_Clicked">
</Button>
</StackLayout>
<ListView x:Name="NewVehicles">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout HorizontalOptions="StartAndExpand" Orientation="Horizontal">
<StackLayout Padding="5,0,0,0" VerticalOptions="StartAndExpand" Orientation="Vertical">
<Label Text="{Binding Make}" ></Label>
<Label Text="{Binding VModel}" ></Label>
<Label Text="{Binding VReg}" ></Label>
</StackLayout>
<Button Text="?" HorizontalOptions="EndAndExpand"></Button>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</ContentPage.Content>
</ContentPage>
代码在masterDetail页面的母版页上实现。 ListView的itemSource在页面类C#OnAppearing()方法中设置。 Build是for android。
这是我的第一个Xamarin应用,请帮助。
答案 0 :(得分:0)
在Page
中可以有一个 Content
,在页面Content
中可以有一个子项。在该子项中,您可以创建嵌套布局。所以在你的例子中,如果你想使用StackLayout
,你将会得到这样的结构:
<ContentPage.Content>
<StackLayout>
<StackLayout>
</StackLayout>
<ListView>
</ListView>
</StackLayout>
</ContentPage.Content>
虽然您描述了错误:
序列不包含元素
似乎是关于代码中的一个集合,它在编译时发生的事实告诉你它必须是你的布局中的东西。否则异常将在运行时发生。
错误仍然是关于集合的,但在这种情况下,源自Xamarin内部,将您的布局元素放在某种集合中,并因为您的XAML代码无效而遇到错误。
如果您尚未启用它,请考虑使用XAML编译(阅读更多here)在编译时检测这些错误并收到更有意义的错误消息。