1

我正在使用 VS2010 VB.NET,正在开发一个包含多个项目的解决方案。我已经在上面开发了一段时间,并试图调试从 ObservableCollection 继承的自定义类(顺便说一下,即使很明显正在调用断点行,它在调试时也不会加载符号),我改变了将启动项目的启动对象复制到另一个 WPF 窗口,我有几个控件用于调试。

立即我遇到了 'Sub Main' is not found in 。我尝试将启动对象更改回正常的启动窗口,但现在启动对象下拉列表只有“Sub Main”,因为它是唯一的选项。我在 App.xaml 中将 StartupURI 改回,但无济于事。

还有人看到这个吗?

我怎样才能让它恢复使用原始窗口?

附带说明一下,是否有某个设置会导致调试器不为程序集加载符号?我知道正在实例化 DiskCollection 类,但是构造函数上的断点总是说断点不能被命中,没有加载符号。

科里

4

2 回答 2

4

WPF中的启动与winforms不同;它由 App.xaml 文件设置。在 xaml 模式下编辑它,您会注意到:

<Application x:Class="WpfApplication6.App"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         StartupUri="MainWindow.xaml">
<Application.Resources>

</Application.Resources>

StartupUri 设置哪个表单将启动事物。

如果您希望代码启动,您可以删除 StartupUri 并改为执行以下操作:

Startup="Application_Startup"

然后在 App.xaml.cs 文件中提供代码,如下所示:

public partial class App : Application

    {
        private void Application_Startup(object sender, StartupEventArgs e)
        {

        }
    }
于 2010-07-30T06:18:19.020 回答
1

因此,显然在项目属性页面中,启用应用程序框架设置未选中。这显然告诉编译器使用 StartupUri 属性来确定启动页面,而不是使用主子(或方法;此设置是否出现在 C# 中?)。

不知何故,该设置未被选中,因此 Sub Main 是 StartupURI 下拉列表中的唯一选项,Windows Application Framework Propertie3s 组被禁用,并且 app.xaml 中的 StartupUri 属性未使用。

现在我知道...

科里

于 2010-07-30T14:09:29.060 回答