Silverlight 4 ManagedRuntimeError 4004 Изображение прокрутки списка XamlParseException - PullRequest
1 голос
/ 04 августа 2010

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>

Я полностью потерян.Любая помощь будет принята с благодарностью.

1 Ответ

1 голос
/ 26 апреля 2011

У меня была такая же проблема.Мне удалось отследить его до ToolTipService.Если я прокручиваю, когда отображается всплывающая подсказка, происходит сбой (только для некоторых элементов).Если я удалю привязку всплывающей подсказки, эта проблема исчезнет.

Я еще не решил эту проблему, чтобы можно было отображать всплывающие подсказки, но по крайней мере я могу устранить ошибку.Обновление
Мне удалось решить проблему и сохранить всплывающие подсказки.Как и вы, я непосредственно настраивал содержание всплывающей подсказки на какой-то текст.Вместо этого я фактически установил содержимое StackPanel, содержащее TextBlock, которое затем содержало текст, и теперь оно работает без сбоев.Я не совсем уверен, почему это работает, к сожалению.

...