3

アプリを WP7 から WP8 に移行していたところ、おかしなことが起こっています。WP7で完全に機能するデータバインドされたピボットがあります。しかし、WP8 では、まったく同じコードが最初の PivotItem をロードしません。WP7 の質問にあるすべてのソリューションを試しましたが、どれも機能しません (醜い回避策ではなく、ソリューションが必要です)。コンストラクターで DataContext を設定しています。コレクションは問題なく、すべてが機能するはずです。アプリをスクロールすると、ピボットのみが読み込まれます。誰にも解決策はありますか?

4

3 に答える 3

5

WP8 の Pivot でデータバインディングの問題を再現できません。WP8 の Panorama Databinding には既知の問題がありますが、Pivo​​t にはありません。何がうまくいかないのですか?

これは、私にとってはうまく機能する基本的な WP8 Pivot Databinding コードです。

DataContext を監視可能な牛のコレクションに設定する C# コード:

this.DataContext = new ObservableCollection<Cow>()
                           {
                               new Cow("Foo"),
                               new Cow("Bar"),
                               new Cow("Baz")
                           };

public class Cow
{
    public Cow(string name)
    {
        Name = name;
    }

    public string Name { get; set; }
}

その DataContext を ItemSource として使用し、Pivo​​tItem.Header と PivotItem.Content を牛の名前にバインドする XAML コード。

<phone:Pivot ItemsSource="{Binding}">
    <phone:Pivot.HeaderTemplate>
        <DataTemplate>
            <ContentControl Content="{Binding Name}" />
        </DataTemplate>
    </phone:Pivot.HeaderTemplate>
    <phone:Pivot.ItemTemplate>
        <DataTemplate>
            <ContentControl Content="{Binding Name}" />
        </DataTemplate>
    </phone:Pivot.ItemTemplate>
</phone:Pivot>

うまく動作します...

Foo をアクティブにしてピボット バーをアクティブにしてピボット

于 2012-12-24T23:36:24.233 に答える
0

それが助けになるなら、私は同じ問題を抱えていて、醜い修正をしましたが、うまくいきました..

    pivotTest.SelectedIndex = 1;
    pivotTest.SelectedIndex = 0;
于 2013-12-13T20:02:17.570 に答える