数据绑定图像到全景控制在WP7不工作



有人能解释一下为什么下面的代码不能工作吗?这里的"不工作"是指图像没有在全景控件中呈现:

XAML

DataContext="{Binding RelativeSource={RelativeSource Self}}"
shell:SystemTray.IsVisible="False">
<Grid x:Name="LayoutRoot">
    <controls:Panorama Title="My Control">
        <controls:Panorama.Background>
            <ImageBrush ImageSource="{Binding RandomImage}"/>
        </controls:Panorama.Background>
c#

public string RandomImage { get; set; }

注意: RandomImage属性设置为internet上的公共jpg图像。

编辑

我也尝试过将RandomImage属性更改为ImageSource,但没有任何运气。

我猜您是在页面加载之后的某个时刻设置RandomImage的,这意味着已经检查了绑定。您需要实现INotifyPropertyChanged并在RandomImage的setter中调用PropertyChanged事件。有关这方面的详细解释,请查看这篇MSDN文章。

它的长和短是绑定在页面加载时被检查,然后不再检查,除非有东西触发它。实现INotifyPropertyChanged意味着当你调用PropertyChanged事件时,它会通知UI再次检查绑定并查看有什么新内容,以便它可以更新自己。

最新更新