XAML数据绑定条件

时间:2014-02-04 21:08:43

标签: c# xaml windows-phone-8

在Windows Phone 8的项目中,我有一个List<>这类物体。

 public class Media
{
    public string idNews { get; set; }
    public string video_url { get; set; }
    public string idMenu { get; set; }
    public string image { get; set; }
    public string video_image { get; set; }
    public string url { get; set; }

}
然后我将该列表绑定到XAML

MediaScroll.DataContext = media.listaMedia; 在我的XAML中我有

<ScrollViewer  Name="MediaScroll" VerticalScrollBarVisibility="Disabled" HorizontalScrollBarVisibility="Auto" Background="{x:Null}" VerticalAlignment="Top" >
            <ItemsControl  Name="ItControl" ItemTemplate="{StaticResource ItemTemplate2}" ItemsPanel="{StaticResource ItemsPanelTemplate1}" ItemsSource="{Binding}" />
        </ScrollViewer>

    <ItemsPanelTemplate x:Key="ItemsPanelTemplate1">
        <StackPanel Orientation="Horizontal" Margin="0,0,0,0"/>
    </ItemsPanelTemplate>

    <DataTemplate x:Key="ItemTemplate2">

        <StackPanel Width="480">
            <Image Name="overlay" Source="/Assets/play@2x.png" Width="75" Canvas.ZIndex="10" Margin="203,85,202,0"  />
            <Image Tag="{Binding id}" Source="{Binding image}" Stretch="Fill" VerticalAlignment="Top" Margin="0,-160,0,0" Tap="Image_Tap" />
        </StackPanel>
    </DataTemplate>

我的问题是,我如何绑定图像或video_image取决于女巫on not empty,另外,我怎么能使“Image Name =”overlay“”只显示另一个图像是否与video_image绑定< / p>

1 个答案:

答案 0 :(得分:0)

在StackPanel内部,只创建一个使用Binding图像设置Source的Image控件。

创建一个Converter并将其附加到您的Binding,以编程方式将play@2x.png作为ImageSource或图像返回。