AutoCAD崩溃试图从.Net命令打开模态对话框

时间:2013-06-13 08:21:38

标签: c# .net autocad autocad-plugin

我正在开发一个AutoCAD .Net插件,其中包含一个打开模态窗口的命令。窗口应显示一个网页。

但它有一个奇怪的错误,这是一个简单的代码来重现它:

[CommandMethod("TEST_BROWSER")]
public void TestBrowserCommand()
{
    var window = new Window();
    var browser = new WebBrowser();
    window.Content = browser;

    browser.Source = new Uri("http://google.com");

    window.ShowDialog();
}

甚至更简单:

[CommandMethod("TEST_BROWSER")]
public void TestBrowserCommand()
{
    Application.ShowModalWindow(new Uri("http://google.com"));
}

以下是AutoCAD崩溃后的步骤序列:

  1. 从命令行(TEST_BROWSER)调用该命令。
  2. 关闭出现的窗口。
  3. 再次调用相同的命令
  4. 出现错误消息:http://i.stack.imgur.com/sFWMX.png
  5. 如果要打开非模态(无模式)窗口,或者不使用Web浏览器,或者在不使用命令的情况下调用代码,它可以正常工作。

    但是我需要一个带有从命令行调用的浏览器的模态窗口。

    其他人是否遇到同样的问题?

3 个答案:

答案 0 :(得分:2)

CommandMethod属性可以有一些标志。 使用session标志使该方法独立于打开的文档,并由autocad应用程序主窗口管理。

答案 1 :(得分:0)

您可以创建WPF浏览器应用程序,并在需要时使用给定的URL启动。或尝试使用AutoCAD

传递shell命令

您可以通过CMD在您选择的浏览器中打开网站 chrome.exe“zcodia.com.au”

答案 2 :(得分:0)

我目前无法测试,但我认为您需要将CommandMethod声明更改为:[CommandMethod("TEST_METHOD", CommandFlags.Modal)]