2014-02-04 4 views
0

В проекте для Windows Phone 8 у меня есть Список <> объектов данного типа.XAML databind с условиями

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/[email protected]" 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 в зависимости от ведьмы на ins't пустой, также, как я могу сделать " Название изображения = «наложение» «отображается только в том случае, если другое изображение связано с видеоизображением

ответ

0

Внутри вашей StackPanel создайте только один элемент управления изображением, в котором установлен источник с привязывающим изображением.

Создайте Converter и приложите это к своему привязке для программного возврата либо вашего [email protected] в качестве источника изображения, либо вашего изображения.

+0

Каждый из моих объектов имеет поля video_image и изображения, и один из них будет пустым, поэтому я должен использовать другой, чтобы выполнить привязку. я могу добиться этого с помощью конвертера? – Ric

+0

Убедитесь, что ваш конвертер привязан непосредственно к вашему объекту Media следующим образом: Источник = "{Binding, Converter = {StaticResource MediaConverter}" где «привязка» сама по себе будет ссылаться на ваш товар –

+0

ok спасибо, плохо посмотрим, если я может заставить его работать :) – Ric

Смежные вопросы