有人可以回答我有关列表视图的问题吗? 我有变量MyDatas,它是listview的集合(并且有效):
<ListView
x:Name="lstView"
HasUnevenRows="True"
ItemsSource="{Binding MyDatas}"> ...
接下来我有(我的代码的一部分,但足以解释问题):
<Label Grid.Row="0"
Grid.Column="1"
Text="{Binding E1}"
FontSize="{Binding FProp.Size1}"
FontAttributes="{Binding FProp.Atrib1}"/>
E1是MyDatas的字段,并且此绑定有效。我在另一个变量FProp(FProp.Size1和FProp.Atrib1)中具有字体的属性,这是有问题的!如何在此列表视图中使用另一个变量? 如果在列表视图之外使用FProp可以,如果在列表视图中使用FProp则不起作用。
谢谢您的帮助
答案 0 :(得分:0)
我相信您没有正确绑定字体大小。
您正在引用对象Size1
中的一个名为FProp
的属性,该属性不在您当前的绑定上下文中。主要问题是每个对象只能有一个绑定上下文。因此,您应该在Size1
对象中包含Atrib1
和MyDatas
,以使其可用于标签。另一个选择是将列表视图的绑定上下文更改为指向FProp
,然后可以访问标签上的值,但是将无法访问E1
值。因此,您需要根据提供的选项来选择解决此问题的方法。
答案 1 :(得分:0)
您可以在ListView中添加x:Name,例如listView1
并使用类似的内容
{Binding Path=BindingContext.FProp.Size1, Source={x:Reference listView1}}