Почему мой Silverlight PivotViewer не загружается? - PullRequest
1 голос
/ 28 июля 2011

У меня есть приложение PivotViewer, над которым я работаю, но я не могу запустить его.

У меня есть хороший файл .cxml (я использовал Pauthor для генерации связанных файлов с глубоким увеличением). Я попытался запустить его из отладки VS 2010 int и даже собрал его и попытался запустить его с моего локального хоста. Я проверил это в Firefox и IE. Я убедился, что он находится в контейнере с заданной шириной и высотой. Я удостоверился, что у меня есть самый последний silverlight.js, я установил соответствующие MIME на IIS.

Мой XAML:

    <UserControl x:Class="DomPivot.MainPage"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
      xmlns:pivot="clr-namespace:System.Windows.Pivot;assembly=System.Windows.Pivot"
      mc:Ignorable="d"
      d:DesignHeight="400" d:DesignWidth="400" Loaded="UserControl_Loaded">

      <Grid x:Name="LayoutRoot" Background="White" Width="400" Height="400">
        <pivot:PivotViewer x:Name="myPivot" Height="350"></pivot:PivotViewer>
      </Grid>
    </UserControl>

Моя ошибка:

    Error: Unhandled Error in Silverlight Application Set property 'System.Windows.FrameworkElement.Style' threw an exception. [Line: 11 Position: 52]   
    at System.Windows.Application.LoadComponent(Object component, Uri resourceLocator)
    at DominionPivot.MainPage.InitializeComponent()
    at DominionPivot.MainPage..ctor()
    at DominionPivot.App.Application_Startup(Object sender, StartupEventArgs e)
    at MS.Internal.CoreInvokeHandler.InvokeEventHandler(Int32 typeIndex, Delegate handlerDelegate, Object sender, Object args)
    at MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, Int32 actualArgsTypeIndex, String eventName)

Исходный файл: DomPivotTestPage.aspx Строка: 0

Строка 11 Позиция 52 в main.xaml теперь является знаком равенства для свойства Height сводного наблюдателя. Интересно, что ДО того, как я добавил свойство высоты, проект бросил эту ошибку в знак равенства для свойства x: Name.

Я не понимаю, почему я получаю эту ошибку, и буду признателен за помощь. Я исследовал другие темы здесь, но ни один из этих ответов не работал или не относился к моей ситуации.

UPDATE:

Я пытался убедиться, что это не какая-то другая ошибка, касающаяся невозможности загрузки элемента управления при попытке загрузить файл .CXML из общедоступного источника. Тот же результат. Я не думаю, что сам элемент управления загружается, поэтому я даже не могу отладить код, который загружает коллекцию.

Поиск в Google "Необработанная ошибка в наборе приложений Silverlight, свойство System.Windows.FrameworkElement.Style" вызвало исключение. " не поможет Возвращает 24 хита. Половина из них не связаны. Другая половина - это другой человек, который, кажется, сталкивается с той же проблемой, публикуя на полдюжины и более форумов и не получая ответа.

1 Ответ

2 голосов
/ 04 августа 2011

ОК .... так вот ряд проблем, которые выявили многие разочаровывающие гугл и футзинг:

 Loaded="UserControl_Loaded"

Я не совсем уверен, как этот параметр оказался в моем теге UserControl,но это не является необходимым и устранило ошибку, на которую ссылается мой вопрос.

Я также переместил метод LoadCollection из своего собственного события в событие UserControl_Loaded и получил ход выполнения.

Далее яобнаружил, что если вы используете Visual Studio для запуска проекта, убедитесь, что вы указали номер порта как в своем коде, так и в настройках веб-проекта.Очевидно, что их необходимо изменить, когда вы отправляете сообщение на действующий сервер.

Наконец, я был убежден, что вы ДОЛЖНЫ использовать либо свободно доступные инструменты Pauthor, либо плагин Excel, чтобы превратить вашу коллекцию вГлубокий зум.Что также требует использования IIS для разрешения .dzi и .dzc.

Не так.Существует свободно доступный инструмент Microsoft Deep Zoom Composer.В этом инструменте вы можете составить свой глубокий зум и экспортировать коллекцию.В итоге вы получите несколько XML-файлов и папок с изображениями.Я обнаружил, что все, что вам нужно сделать, - это сослаться на файл output_dzc.xml в вашем collection.cxml как на ImgBase и убедиться, что ваши идентификаторы совпадают между этими двумя файлами.Вот и все.

Надеюсь, это спасет кого-то от разочарования, которое я испытал за последние несколько недель, пытаясь использовать этот удивительный, но патетически недокументированный элемент управления.

Я бы также рекомендовал эту запись в блоге:

http://indiandotnet.wordpress.com/2011/02/12/pivot-viewer-example-cricket-world-cup-2011/

Содержит ссылку на очень простой файл решения pivotviewer VS 2010, который можно использовать для изучения и ознакомления со структурой файлов и каталогов, а также с необходимой структурой файлов XML инастройки решения.

...