У меня есть существующее приложение WPF, из которого я хотел бы сделать расширение VisualStudio.XamlParseException с использованием Extended.Wpf.Toolkit в проекте расширения VS
В принципе, у меня есть окно xaml, в котором я использую библиотеку Extended.Wpf.Toolkit для AvalonDock. Это приложение отлично работает без каких-либо проблем.
Я попытался повторно использовать то же самое окно в моем проекте расширения и я получил XamlParseException от нагрузки
Вот пример кода, который не удается:
<Window x:Class="Company.VisualStudioExtension.Window2"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:xcad="http://schemas.xceed.com/wpf/xaml/avalondock"
Title="Window2" Height="300" Width="300">
<Grid>
<xcad:DockingManager AllowMixedOrientation="True" BorderThickness="1">
<xcad:DockingManager.DocumentHeaderTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Test" />
</StackPanel>
</DataTemplate>
</xcad:DockingManager.DocumentHeaderTemplate>
<xcad:LayoutRoot x:Name="_layoutRoot">
<xcad:LayoutPanel Orientation="Horizontal">
<xcad:LayoutAnchorablePane DockWidth="300">
</xcad:LayoutAnchorablePane>
</xcad:LayoutPanel>
</xcad:LayoutRoot>
</xcad:DockingManager>
</Grid>
подсвечивается Исключение по следующей строке:
<xcad:LayoutPanel Orientation="Horizontal">
"Метод или операция не реализовано ».
EDIT
Кажется регистрация всех AvalonDock DLL в GAC устраняет проблему, но, очевидно, это не является приемлемым решением ...
Я думаю, эти дллы не должным образом зарегистрированы во время работы в качестве расширения Я Propably нужно ссылаться на них определенным образом ... на данный момент, они упоминаются в csproj внутреннего абонента + CopyLocal = True
EDIT2
Добавлен исходный код, чтобы воспроизвести проблему https://github.com/MrLuje/VSPackage_NotWorking
Есть 2 проекта:
- приложение WPF с рабочим кодом в MainWindow
- удлинительный VS с нерабочим кода в window1 (в отладочных , вам нужно нажать в меню Сервис> «Мое имя команды»)
Похоже, LayoutPanel ориентирован на ориентацию. Вам нужно установить ориентацию? Если нет, удалите его и перейдите. Если да, [править] и добавлять сведения. – Will
Мне они не нужны, но проблема все еще сохраняется, в той же строке – MrLuje
Вам нужно зафиксировать детали исключения, чтобы сообщить, какой метод не реализован. – Will