1

I am building a panorama which displays images through binding. I need to find index of panorama item whenever the current item changes. But the SELECTIONCHANGED event is not firing in case when data is retrieved through binding. Can you please suggest some other way. Thanx in advance

XAML Code

<phone:Panorama x:Name="HeaderPanorama"
    ItemsSource="{Binding PanoramaImages}"
    Width="550" Margin="-10,-255,0,-140"
    SelectionChanged="HeaderPanorama_SelectionChanged_1">
    <phone:Panorama.ItemTemplate>
        <DataTemplate>
            <Image Source="{Binding}" Margin="-10"/>
        </DataTemplate>
    </phone:Panorama.ItemTemplate>
</phone:Panorama>

CodeBehind

private void HeaderPanorama_SelectionChanged_1(
        object sender,
        SelectionChangedEventArgs e)
{
    if (this.DataContext != null && this.DataContext is HomeViewModel)
    {
        ((HomeViewModel)this.DataContext).PanoramaItemIndex =
                HeaderPanorama.SelectedIndex;
    }
}

ViewModel Code

public HomeViewModel()
{
    RequestHomeData();
    PanoramaImages = new List<string>();
    PanoramaImages.Add("/Assets/n.png");
    PanoramaImages.Add("/Assets/n.png");
    PanoramaImages.Add("/Assets/n.png");
    PanoramaImages.Add("/Assets/n.png");
}

private List<string> _panoramaImages;
public List<string> PanoramaImages
{
    get { return _panoramaImages; }
    set
    {
        _panoramaImages = value;
        NotifyPropertyChanged("PanoramaImages");
    }
}

private int _panoramaItemIndex;
public int PanoramaItemIndex
{
    get { return _panoramaItemIndex; }
    set
    {
        _panoramaItemIndex = value;
        NotifyPropertyChanged("PanoramaItemIndex");
    }
}
Chubosaurus Software
  • 8,133
  • 2
  • 20
  • 26
Rohit Jain
  • 115
  • 9
  • This question might help you: http://stackoverflow.com/questions/14260701/windows-phone-8-panorama-selectionchanged-databinding/22731993 – meneses.pt Aug 01 '14 at 14:54

0 Answers0