私は1)何が起こっているのか、2)問題を解決する方法を探しています。Windows Phoneリストボックスの項目背景明白に設定されているにもかかわらず、色を変更
問題
ListBoxの項目の高さが2521を超えている場合、背景が明示的に他の何かに設定されている場合でも、黒の背景を変更するようです。 2522以上に
DataContext = new List<int>() { 1 };
変更のTextBlockの高さ:私は以下の持っている、とあなたxaml.csファイルに以下を追加したサンプルのXAMLファイルを取る
を再現する方法を
。
サンプルコードは、問題が発生した場所ではありませんが、バグを示す簡単な例です。私のサイズは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は低速ではありません。背景が色を変える以外はすべて期待どおりに動作します。
どのようにデータを視覚化しているか再考してください。これらの多くのUIElementsをDataTemplateに追加することで、ある種の実装制限に慣れてきたことに驚くことはありません。 Windows Phone 7には、各UIElementが2048ピクセル(またはそれに近い数のピクセル)の高さになる可能性があるという制限がありました。これは似たようなものかもしれません。私はListBoxを調べるためのアドバイス、およびそれらを設定する方法を説明します。 – Praetorian
私は非常に複雑なUIを持っていますが、簡潔にするために、この簡単な例を参考にしています。私は当初、UIの深さが(XAMLでは)深かったからだと思っていましたが、それは要素の数であるかもしれません。おそらくあなたが高さ制限を述べたように。私は、高さが原因であるかどうかを確認するためにいくつかの実験を行います。 – Coltin
サンプルコードがバグを簡単な方法で示し、実際のコードをまったく反映していないことを明確にするために質問を変更します。 – Coltin