无法在WPF VB.NET项目中设置启动对象

时间:2010-07-29 20:51:12

标签: wpf vb.net visual-studio-2010 debug-symbols

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

我立刻遇到了'Sub Main'未被发现。我尝试将启动对象更改回正常的启动窗口,但现在启动对象下拉列表只有“Sub Main”,因为它是唯一的选项。我在App.xaml中更改了StartupURI,但没有用。

其他人见过这个吗?

如何恢复使用原始窗口?

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

科里

2 个答案:

答案 0 :(得分: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)
        {

        }
    }

答案 1 :(得分:1)

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

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

现在我知道......

科里