我正在使用 VS2010 VB.NET,正在开发一个包含多个项目的解决方案。 我已经在它上开发了一段时间,并试图调试从 ObservableCollection 继承的自定义类(顺便说一句,即使很明显正在调用断点行,调试时也不会加载符号),我更改了启动项目的启动对象到另一个 WPF 窗口,我有几个控件供调试使用。
我立即遇到了“Sub Main”未在 中找到的情况。 我尝试将启动对象更改回正常启动窗口,但现在启动对象下拉列表中只有“Sub Main”,因为它是唯一的选项。 我将 StartupURI 改回到 App.xaml 中,但无济于事。
还有其他人看过这个吗?
如何恢复使用原来的窗口?
顺便说一句,是否有某个设置会导致调试器不加载程序集的符号? 我知道 DiskCollection 类正在被实例化,但构造函数上的断点总是说无法命中断点,未加载符号。
科里
WPF中的启动与winform中的启动不同;它由 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)
{
}
}
显然在“项目属性”页面中,“启用应用程序框架”设置未被选中。 这显然告诉编译器使用 StartupUri 属性来确定启动页面,而不是使用 main sub(或方法;此设置出现在 C# 中吗?)。
不知何故,该设置未选中,因此 Sub Main 是 StartupURI 下拉列表中的唯一选项,Windows 应用程序框架属性组被禁用,并且 app.xaml 中的 StartupUri 属性未使用。
现在我知道了...