XAML Xamarin中ListView中的绑定
有人能回答我关于listview的问题吗? 我有一个变量MyDatas,它是listview的集合(它可以工作):XAML Xamarin中ListView中的绑定,xaml,listview,xamarin,android-listview,Xaml,Listview,Xamarin,Android Listview,有人能回答我关于listview的问题吗? 我有一个变量MyDatas,它是listview的集合(它可以工作): 。。。 接下来我有(部分代码,但足以解释问题): E1是MyDatas的一个字段,此绑定工作正常。我在另一个变量FProp(FProp.Size1和FProp.Atrib1)中有字体属性,这就是问题所在!如何在此listview中使用另一个变量? 如果在listview之外使用FProp,则一切正常,如果在listview中使用它,则不起作用 谢谢您的帮助我相信您没有正确绑定
。。。
接下来我有(部分代码,但足以解释问题):
E1是MyDatas的一个字段,此绑定工作正常。我在另一个变量FProp(FProp.Size1和FProp.Atrib1)中有字体属性,这就是问题所在!如何在此listview中使用另一个变量?
如果在listview之外使用FProp,则一切正常,如果在listview中使用它,则不起作用
谢谢您的帮助我相信您没有正确绑定字体大小。
您正在对象
FProp
内引用名为Size1
的属性,该属性不在当前绑定上下文中。主要问题是每个对象只能有一个绑定上下文。因此,您应该在MyDatas
对象中包含Size1
和Atrib1
,以使其可用于标签。另一个选项是将listview的绑定上下文更改为指向FProp
,这样您就可以访问标签上的值,但您将无法访问E1
值。因此,您需要根据提供的选项选择如何解决此问题。我认为您没有正确绑定字体大小。
您正在对象
FProp
内引用名为Size1
的属性,该属性不在当前绑定上下文中。主要问题是每个对象只能有一个绑定上下文。因此,您应该在MyDatas
对象中包含Size1
和Atrib1
,以使其可用于标签。另一个选项是将listview的绑定上下文更改为指向FProp
,这样您就可以访问标签上的值,但您将无法访问E1
值。因此,您需要根据提供的选项选择如何解决此问题。您可以在ListView中添加一个x:Name,比如说listView1
,并使用类似的方法
{Binding Path=BindingContext.FProp.Size1, Source={x:Reference listView1}}
您可以在ListView中添加一个x:Name,比如说
listView1
,并使用类似的方法
{Binding Path=BindingContext.FProp.Size1, Source={x:Reference listView1}}
根据API文档,FontSize不是可绑定的属性,不是吗?fontsize有一个可绑定属性标记为backing store属性,文档可能有误。一般来说,那些可绑定的在属性列表中说“这是一个可绑定的属性”,谢谢你的回答。例如,我将在listview外部的标签中尝试它。我已在应用程序中签入。的确,我们不能绑定属性FontSize和FontAttributes。没有可绑定属性。根据API文档,FontSize不是可绑定属性,不是吗?fontsize有一个可绑定属性标记为backing store属性,文档可能有误。一般来说,那些可绑定的在属性列表中说“这是一个可绑定的属性”,谢谢你的回答。例如,我将在listview外部的标签中尝试它。我已在应用程序中签入。的确,我们不能绑定属性FontSize和FontAttributes。没有可绑定的属性。谢谢。不幸的是,我很害怕:-(我认为我不能在一个listview中同时使用两个不同的变量。因此我问了这个问题。你确定吗?如果是,我必须找到另一种方法来解决这个问题。我将在listview中保存的变量MyDatas中包含FProp的属性Size1。谢谢。不幸的是,我担心:-(我认为我不能在一个listview中同时使用两个不同的变量。因此我问了这个问题。你确定吗?如果是,我必须找到另一种方法来解决这个问题。然后我会将FProp的属性Size1包含到我的变量MyDatas中,该变量在listview中被保存。谢谢:-)我会立即尝试。但如果FontSize和FontAttributes不是可绑定属性,这将是可行的?我检查了。您的想法非常适合在我们的listview中使用另一个变量的属性。实际上,它是FProp.Size1,在listview中可见。但它不是可绑定属性,并且不设置FontSize。FontSize设置为默认值。嗯,source代码似乎将标签显示为可绑定的(我回到办公桌时会进行测试)…在任何情况下,您都可以使用行为附加属性来创建自己的可绑定属性:-)我会检查它…谢谢。请告诉我您的测试结果,问您:-)我会立即尝试。但如果FontSize和FontAttributes不是可绑定属性,这将是可行的?我检查了。您的想法非常适合在我们的listview中使用另一个变量的属性。实际上,它是FProp.Size1,在listview中可见。但它不是可绑定属性,并且不设置FontSize。FontSize设置为默认值。嗯,source代码似乎将标签显示为可绑定的(我回到办公桌时会进行测试)…在任何情况下,您都可以使用行为附加属性来创建自己的可绑定属性:-)我将检查它。。。非常感谢。请告诉我你的测试结果
{Binding Path=BindingContext.FProp.Size1, Source={x:Reference listView1}}