Я делаю программу AutoCAD .net, в которой в качестве интерфейса используется окно WPF.В настоящее время интерфейс WPF используется в приложении AutoCAD .net, и я вызываю окно из AutoCAD следующим образом.
public class Class1
{
public static WPFWindow.MainWindow mainWindow = new WPFWindow.MainWindow();
[CommandMethod("Launch", CommandFlags.Session)]
public void Launch()
{
Autodesk.AutoCAD.ApplicationServices.Application.ShowModalWindow(mainWindow);
}
}
Это работает нормально, пока я не начну добавлять любую форму ресурса в окно WPF.Я добавляю. Например, следующее работает до
<Window x:Class="WPFWindow.MainWindow"
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:local="clr-namespace:WPFWindow"
mc:Ignorable="d"
Title="Test" Height="450" Width="800"
WindowStyle="None"
AllowsTransparency="True"
>
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Themes/Styles.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
<Button Content="Press Me"/>
</Grid>
.... Я ссылаюсь на стиль статического ресурса для окна
WindowStyle="None"
AllowsTransparency="True"
Style="{StaticResource MainWindow}"
>
Со статическимресурс, когда я запускаю команду «Запуск» в AutoCAD, программе не удается найти статический ресурс.Я не уверен, как получить экземпляр WPFWindow для поиска ресурса с использованием кода C #.В качестве теста я добавил WPFWindow в качестве ссылки на приложение WPF и сумел получить его для поиска ресурса с помощью Pack URI
<ResourceDictionary Source="pack://application:,,,/WPFWindow;component/Themes/Styles.xaml"/>
Есть ли эквивалент C #, который я могу использовать для экземпляраWPFWindow.MainWindow?