1) 何が起こっているのか、2) 問題を解決する方法を探しています。
問題
ListBox アイテムの高さが 2521 を超えると、背景が明示的に別のものに設定されていても、背景が黒に変更されているように見えます。
再現方法
以下にあるサンプル XAML ファイルを使用して、xaml.cs ファイルに次を追加します。
DataContext = new List<int>() { 1 };
TextBlock の高さを 2522 以上に変更します。
サンプル コードは、私が問題に遭遇した場所ではありませんが、バグを示す簡単な例です。サイズが 2522 以上の TextBlock を使用する予定はありません :)
サンプル XAML ファイル
<Grid x:Name="LayoutRoot" Background="Brown">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<phone:Pivot x:Name="pivot" Title="{Binding name}" Grid.Row="1" Foreground="White" Margin="10,0,0,0">
<phone:PivotItem x:Name="mainPivot" Header="menu" Margin="0,0,20,0">
<ListBox ItemsSource="{Binding}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid Background="White">
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock Height="2521" Text="some data" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}" FontSize="22" Foreground="Purple"/>
</StackPanel>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</phone:PivotItem>
</phone:Pivot>
</Grid>
</phone:PhoneApplicationPage>
備考
私の UI について何人かの人々が懸念を表明しました。上記のコードはサンプルであり、実際の UI ではありません。パフォーマンスの問題はなく、ListBox の動作も遅くありません。背景の色が変わることを除いて、すべてが期待どおりに機能します。