0

mainviewmodelに2つの監視可能なコレクションがあります。次に、この2つのコレクションをxamlファイルにバインドする必要があります。

<!--Panorama control-->
<controls:Panorama x:Name="AppPano" ItemsSource="{Binding SlidesCollections}" SelectionChanged="AppPano_SelectionChanged" >
    <controls:Panorama.Background>
        <ImageBrush ImageSource="PanoramaBackground.png"/>
    </controls:Panorama.Background>

    <controls:Panorama.ItemTemplate>
        <DataTemplate>
            <Grid VerticalAlignment="Top" HorizontalAlignment="Left" Margin="0,-100,0,0">
                <StackPanel HorizontalAlignment="Center" Height="250" Width="200" VerticalAlignment="Top">
                    <TextBlock Text="{Binding Title}" HorizontalAlignment="Center" FontSize="200" Width="Auto"/>
                </StackPanel>
                <ListBox x:Name="ItemsList" ItemsSource="{Binding SlideItemList}" Margin="0,250,0,0" VerticalAlignment="Top" SelectionChanged="ItemsList_SelectionChanged" Height="430">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel x:Name="ImgStack" HorizontalAlignment="Left" Height="430" VerticalAlignment="Top" Width="370" Margin="50,0,0,0">
                                <Image Height="350" Width="360" Source="{Binding Image}"/>
                                </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>
            </Grid>
        </DataTemplate>
    </controls:Panorama.ItemTemplate>
</controls:Panorama>

MainViewModel.cs

   public KidsAppMainViewModel()
    {
        this.SlidesCollections = new ObservableCollection<AppItemsListViewModel>();

        this.SlideItemList = new ObservableCollection<AppItemViewModel>();

    }

  public ObservableCollection<AppItemsListViewModel> SlidesCollections {get; set;}

  public ObservableCollection<AppItemViewModel> SlideItemList {get; set;}

MainXaml.cs

  DataContext = App.ViewModel

App.xaml.cs

  public static MainViewModel viewModel = new MainViewModel();
  public MainViewModel ViewModel
  { get { return viewModel;}}

問題:

アプリケーションを実行すると、パノラマアイテムテンプレートのバインドは正常に機能しますが、リストアイテムテンプレートは機能しません。私は他の方法でcol​​lectionviewソースを使用してみましたが、それは私にとってはうまくいきましたが、アイテムをバインドするには遅すぎました。

plsは私にこのコレクションを直接バインドする方法を提案します。

4

1 に答える 1

0

あなたの xaml マークアップから私が理解していることは、SlideItemList内部にAppItemsListViewModel.

于 2012-03-02T08:06:50.993 に答える