我正在尝试将某些数据绑定到列表视图,并且正在处理以下问题:
我的对象类型是 CartItem ,它具有一个 product 字段和一个 Quantity 字段。
数量只是一个整数,但产品也是一个模型,它具有较长的ID,字符串ImageUrl和许多其他字段。
我试图像这样将产品内的数据绑定到我的列表视图:
<Image Grid.Column="0" Grid.RowSpan="2" Source="{Binding CartItem.Product.Image}">
但是它不起作用。
是否可以通过XAML文件访问此文件,或者必须编写一些显式代码?
[编辑]:
protected override void OnAppearing()
{
var stack = Navigation.NavigationStack;
MainPage mainPage = (MainPage)stack[0];
List<CartItem> cartList = mainPage.cart;
//DependencyService.Get<IMessage>().LongAlert(cartList[0].product.Image);
BindingContext = cartList;
CartListView.ItemsSource = cartList;
base.OnAppearing();
}
已修复:
<Image Grid.Column="0" Grid.RowSpan="2" Source="{Binding product.Image}"
答案 0 :(得分:0)
如果ItemsSource是List<CartItem>
,则列表中的每个元素都是CartItem
的实例,因此绑定表达式应为
Source="{Binding Product.Image}"
还请注意,在已注释掉的示例中,您使用的是“ p”产品而不是“ P”产品-请确保使用与您的财产命名匹配的产品