Silverlight 4 がクラッシュします。Just-In-Time Debugger は次のように述べています。
An unhandled exception ('Unhandled Error in Silverlight Application')
Code: 4004
Category: ManagedRuntimeError
Message: System.Windows.Markup.XamlparseException: [Line: 0 Position: 0]
リストボックスを 20 個 (またはそれくらい) のアイテムのコレクションにバインドします。コレクションは正常にロードされ、正しくバインドされます。ただし、コレクションの一番下までスクロールしてから上にスクロールしようとすると、Silverlight がクラッシュします。
このエラーは、アイテム テンプレート内に contentcontrol、contentpresenter、またはイメージ コントロールを含めた場合にのみ発生します。たとえば、「InnerBorder」の高さを 100 に設定してコンテンツ コントロールを削除すると、Silverlight はクラッシュしません。さらに {Binding Visual} は、アイテムのビュー モデルで定義されたイメージです。
これが私のコードです。
<Border HorizontalAlignment="Left"
Margin="2"
Padding="0">
<Controls:Expander ExpandDirection="Right"
Header="Templates">
<ListBox UseLayoutRounding="False"
SelectedItem="{Binding SelectedTemplate, Mode=TwoWay}"
Margin="4"
ItemsSource="{Binding Templates}"
ScrollViewer.VerticalScrollBarVisibility="Visible"
Width="250">
<ListBox.ItemTemplate>
<DataTemplate>
<Border Style="{StaticResource InnerBorder}"
Width="200"
Margin="4">
<ToolTipService.ToolTip>
<ToolTip Content="{Binding Description}" />
</ToolTipService.ToolTip>
<StackPanel Orientation="Vertical"
VerticalAlignment="Center"
HorizontalAlignment="Center">
<ContentControl Content="{Binding Visual}"
MaxWidth="100" />
<TextBlock Text="{Binding Name}"
HorizontalAlignment="Center" />
</StackPanel>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Controls:Expander>
私は完全に失われました。どんな助けでも大歓迎です。