Silverlight 4正在崩溃我。 Just-In-Time调试器说:
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>
我完全迷失了。任何帮助将不胜感激。
答案 0 :(得分:1)
我遇到了同样的问题。我设法将其追踪到ToolTipService
。如果在显示工具提示时滚动,则会发生崩溃(仅在某些项目上)。如果我删除工具提示绑定,则此问题就会消失。
我还没有解决这个问题,因此可以显示工具提示,但至少我可以删除崩溃。
<强>更新强>
我设法解决了问题并保持工具提示正常工作。和你一样,我直接将工具提示内容设置为某些文本。相反,我实际上将内容设置为包含StackPanel
的{{1}},然后包含文本,现在它可以正常运行而不会崩溃。不幸的是,我不完全确定为什么会这样。