Visual Studio дает мне проблемы с дизайнером XAML - PullRequest
0 голосов
/ 15 декабря 2011

Я до сих пор не могу правильно настроить свою настройку.Это работало, а теперь внезапно - нет.Да, я удалил Silverlight 5 RC и установил Silverlight 5, если это имеет значение ..

Silverlight 4 + PRISM решение У меня есть проект «инфраструктуры» с моими пользовательскими элементами управления.У меня есть generic.xaml со стилями для этих элементов управления.Я знаю, проблема связана с моими пользовательскими элементами управления, потому что, когда я ее комментирую - это работает.Иногда я открываю представление и вижу его, но мой пользовательский элемент управления отображается в виде прямоугольника.

Когда я пытаюсь отбросить свой элемент управления при просмотре, перетаскивая его с панели инструментов:

Unspecified error (Exception from HRESULT: 0x80004005 (E_FAIL))
   at MS.Internal.XcpImports.MethodEx(IntPtr ptr, String name, CValue[] cvData)
   at MS.Internal.XcpImports.MethodPack(IntPtr objectPtr, String methodName, Object[] rawData)
   at MS.Internal.XcpImports.Collection_Add[T](PresentationFrameworkCollection`1 collection, Object value)
   at System.Windows.PresentationFrameworkCollection`1.AddImpl(Object value)
   at System.Windows.PresentationFrameworkCollection`1.System.Collections.IList.Add(Object value)
   at Microsoft.Expression.DesignModel.InstanceBuilders.ClrObjectInstanceBuilder.InstantiateChildren(IInstanceBuilderContext context, ViewNode viewNode, DocumentCompositeNode compositeNode, Boolean isNewInstance)

Когда он перестает отображаться (редактировать xaml и т. Д.) - я получаю это:

System.Runtime.Serialization.SerializationException
Type 'System.Windows.Markup.XamlParseException' in assembly 'System.Windows, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e' is not marked as serializable.
   at MS.Internal.Designer.VSDesignerClient.RestoreSelection(List`1 offsetsInXamlFile)
   at MS.Internal.Designer.DesignerPane.LoadDesignerView(Boolean isReload)

Все отлично работает во время выполнения и отлично работает в Blend (я решил проблему Blend с этим: Исключение ExpressionBlend, когда UserControl содержит мой пользовательский элемент управления и это: Как правильно организовать ресурсы XAML вSilverlight? )

Я уже потратил на это немало времени. Он также отлично работает в VS в моем тестовом проекте, где у меня не так много - только тестовое представление и ссылка на инфраструктуру.Хотелось бы, чтобы был какой-то способ отладки Visual Studio ..

EDIT Отладка VS.Сначала получим:

at Microsoft.Windows.Design.Platform.SilverlightViewProducer.OnUnhandledException(Object sender, ViewUnhandledExceptionEventArgs e)
   at Microsoft.Windows.Design.Platform.SilverlightViewProducer.OnViewUpdated()
   at Microsoft.Windows.Design.Platform.ViewProducerBase.<get_DesignModeValueProviderService>b__7(IInstanceBuilderContext invokingContext)
   at MS.Internal.Services.DesignModeValueProviderService.ValueTranslationServicePropertyInvalidated(Object sender, PropertyInvalidatedEventArgs e)
   at MS.Internal.Features.DesignModeValueProviderConnector.ValueTranslationServiceImpl.InvalidateProperty(ModelItem item, PropertyIdentifier property)
   at MS.Internal.FrameworkElementControl.FrameworkElementDesignTimePropertiesAdorner.SetDesignResizeMode(Boolean updateView)
   at MS.Internal.FrameworkElementControl.FrameworkElementDesignTimePropertiesAdorner..ctor(ModelItem item)
   at MS.Internal.FrameworkElementControl.FrameworkElementDesignTimePropertiesGrabHandleAdornerProvider.Activate(ModelItem item)
   at Microsoft.Windows.Design.Interaction.AdornerProvider.InvokeActivate(EditingContext context, ModelItem item)
   at MS.Internal.Features.AdornerProviderFeatureConnector.FeatureProvidersAdded(ModelItem item, IEnumerable`1 extensions)
   at Microsoft.Windows.Design.Policies.PolicyDrivenFeatureConnector`1.OnPolicyItemsChanged(Object sender, PolicyItemsChangedEventArgs e)
   at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
   at Microsoft.Windows.Design.Policies.ItemPolicy.OnPolicyItemsChanged(PolicyItemsChangedEventArgs e)
   at MS.Internal.Policies.SoleSelectionPolicy.RaisePolicyItemsChanged(ModelItem oldSoleSelection, ModelItem newSoleSelection)
   at MS.Internal.Policies.SoleSelectionPolicy.OnSelectionChanged(Selection newSelection)
   at Microsoft.Windows.Design.ContextItemManager.SubscribeProxy`1.SubscribeContext(ContextItem item)
   at Microsoft.Windows.Design.SubscribeContextCallback.Invoke(ContextItem item)
   at Microsoft.Windows.Design.EditingContext.DefaultContextItemManager.OnItemChanged(ContextItem item)
   at Microsoft.Windows.Design.EditingContext.DefaultContextItemManager.SetValue(ContextItem value)
   at MS.Internal.Designer.VSDesigner.VSDesignerClientImpl.RestoreSelection(List`1 selectionOffsetsInXamlFile)

С внутренними исключениями:

{"[Parser_SetValue_Exception] \ r \ n Аргументы: System.Windows.FrameworkElement.Style \ r \ n Строки ресурсов отладкинедоступно. Часто ключ и аргументы предоставляют достаточную информацию для диагностики проблемы. См. http://go.microsoft.com/fwlink/?linkid=106663&Version=4.0.60831.0&File=System.Windows.dll&Key=Parser_SetValue_Exception [Строка: 0 Позиция: 0] "}

   at MS.Internal.XcpImports.CreateFromXaml(UnmanagedMemoryStream stream, String sourceAssemblyName, Boolean createNamescope, Boolean requireDefaultNamespace, Boolean allowEventHandlers)
   at System.Windows.Controls.Control.GetBuiltInStyle(IntPtr nativeTarget, IntPtr& nativeStyle)

1 Ответ

0 голосов
/ 16 декабря 2011

Может быть, это поможет кому-то с подобными проблемами.

Моя проблема была с установками Silverlight на моем ПК.

У меня были установлены инструменты SL4, SDK и т. Д.Кроме того, у меня был установлен SL5 RC, когда все работало.Помните, я нацеливаюсь на SL4!

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

Я удалил SL5RC, ​​и все это началось!Я удалил ВСЕ SL вещи и установил SL4 последние и самые большие и все еще те проблемы.Я потратил около 10 часов, пробуя разные вещи со своими файлами ресурсов и пытаясь отладить эту проблему.Помните, это приложение SL4!

Сегодня я сдался и просто попытался установить SL5.Boom!Оно работает.Я не знаю что и как, но установка SL5 сделала свое дело.Я действительно ненавижу беспорядок, как это, ну да ладно.Надеюсь, это сэкономит кому-то часы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...