【发布时间】:2016-10-31 09:42:45
【问题描述】:
我无法让HeaderTemplate 中的{Binding Title} 出现。
这是连接到 BindingContext 的类:
class SensorGroup
{
public string Title { get; set; }
public IList<Sensor> Sensors { get; set; }
}
XAML:
<ListView Header=""
ItemsSource="{Binding Sensors}">
<ListView.HeaderTemplate>
<DataTemplate>
<Grid>
<Label Text="{Binding Title}"/>
</Grid>
</DataTemplate>
</ListView.HeaderTemplate>
<ListView.ItemTemplate>
...
</ListView>
如果我将其替换为 <Label Text="Some static text"/>,则会出现文本。
我找到了this related question,它链接到this other question。但我无法让它工作。我试过了:
<ContentPage.Resources>
<Label x:Key="MyTitle"
Binding="{Title}"/>
</ContentPage.Resources>
...
<Grid>
<StaticResource ResourceKey="MyTitle"/>
</Grid>
它给了我一个错误,说找不到与Title 的绑定。
【问题讨论】:
-
您是否正确设置了 DataContext 以便它可以找到
SensorGroup类? -
ListView属性绑定到Sensors的项显示正确,所以构造函数中写的BindingContext = new SensorGroup()(过度简化)工作正常。