このエラーが発生する:パノラマコントロールにデータをバインドしようとすると、ItemsSourceを使用する前にItemsコレクションが空である必要があります。以下は私のxamlスニペットです。 MyObjectには、Textプロパティを持っていることをパノラマWP7でのバインディング、ItemsSourceを使用する前にItemsコレクションを空にする必要があります
protected override void OnNavigatedTo(NavigationEventArgs e) {
string id = NavigationContext.QueryString["id"];
ObservableCollection<MyObject> list = DataAccessService.get(id);
panorama.ItemsSource = list;
base.OnNavigatedTo(e);
}
注:私のコードの後ろに(xaml.cs)で
<controls:Panorama x:Name="panorama">
<controls:PanoramaItem >
<StackPanel>
<TextBlock Text="{Binding Text}"/>
</StackPanel>
</controls:PanoramaItem>
</controls:Panorama>
は、私はこのような何かを行います。どんな助けもありがとう。
以下のリンクごとに変更した後も、同じ例外がスローされます。
<controls:Panorama x:Name="panorama">
<controls:Panorama.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding Header}"/>
</DataTemplate>
</controls:Panorama.HeaderTemplate>
<controls:PanoramaItem >
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Text}"/>
</StackPanel>
</DataTemplate>
</controls:PanoramaItem>
</controls:Panorama>
最後に、以下のユーザーの助けを借りて、この例外を取り除いたソリューションです。
<controls:Panorama x:Name="panorama">
<controls:Panorama.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding Header}"/>
</DataTemplate>
</controls:Panorama.HeaderTemplate>
<controls:Panorama.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Text}"/>
</StackPanel>
</DataTemplate>
</controls:Panorama.ItemTemplate>
</controls:Panorama>
あなたが参照したリンクごとに自分のコードを修正しようとしましたが、それでも動作しません。同じ例外がスローされます。 – jake
@ user373312 - PanoramaItemをXAMLから削除しましたか? –
いいえ、それをさせてください。 – jake