0

データ テンプレートがあります

<DataTemplate x:Key="MyPivotItemTemplate">
        <controls:PivotItem Header="{Binding MyClassAName}" />
</DataTemplate>

私が利用した

<controls:Pivot Title="Category" x:Name="myPivot"
 ItemTemplate="{StaticResource MyPivotItemTemplate}">

ここで、ClassA のリストをピボット項目ソースとして渡そうとします。これは以下のように定義されています。

Class ClassA
{
    String MyClassAName;
    ...
}
...
ClassA myClassAItem = new ClassA() {MyClassAName = "LOL"};
ClassACollection.Add(myClassAItem);
...
myPivot.ItemSource = ClassACollection;

コードを実行しようとすると、追加されたピボット項目ヘッダー テキストは、ClassA の MyClassAName 値 (つまり「LOL」) ではなく、提供されたコレクションのオブジェクト名 (つまり「MyApp.ClassACollection」) になります。では、ClassA アイテムの MyClassAName のそれぞれを、動的に作成されたピボットアイテムのヘッダーのそれぞれにバインドするにはどうすればよいでしょうか?

ありがとう!

4

1 に答える 1

1

ピボットへのデータバインディングには既知の問題があります。ここで回避策を参照してください。

DataBound Pivot コントロールが最初の PivotItem を作成していない

また、ヘッダー バインディング パスがクラスの name プロパティと一致しません。次のように変更してみてください:

 <controls:PivotItem Header="{Binding MyClassAName}" />
于 2011-12-24T06:52:44.007 に答える