2010-07-29 79 views
1

我正在使用VS2010 VB.NET,正在開發一個包含多個項目的解決方案。我一直在開發它,並試圖調試一個從ObservableCollection繼承的自定義類(在調試時不會加載符號,即使很明顯突出的行被調用),我改變了啓動項目的啓動對象到不同的WPF窗口,我有兩個控件供我調試。無法在WPF VB.NET項目中設置啓動對象

立即我遇到'Sub Main'沒有被發現。我嘗試將啓動對象更改回正常啓動窗口,但現在啓動對象下拉菜單中只有「Sub Main」,因爲它是唯一的選項。我改回了App.xaml中的StartupURI,無濟於事。

任何人看到這個?

我該如何恢復使用原始窗口?

作爲一個方面說明,是否有一個設置某處會導致調試器不加載程序集的符號?我知道DiskCollection類正在被實例化,但構造函數上的斷點總是說斷點不能被命中,沒有符號被加載。

Cory

回答

1

因此,在Project Properties頁面中,Enable應用程序框架設置未被選中。這顯然告訴編譯器使用StartupUri屬性來確定啓動頁面,而不是使用主子(或方法;此設置是否出現在C#中?)。

不知何故,該設置未被選中,因此Sub Main是StartupURI下拉菜單中的唯一選項,Windows應用程序框架Propertie3s組被禁用,並且app.xaml中的StartupUri屬性未被使用。

現在我知道了......

科里斯

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) 
     { 

     } 
    } 
+0

事實證明,啓用應用程序框架未被選中,我想告訴它使用一個窗口,而不是初始的App.xaml.vb/CS文件執行。即使該窗口在App.xaml文件中正確給出,但此應用程序框架設置似乎與app.xaml分開,並影響編譯器是否使用在那裏找到的StartupURI屬性。 – CodeWarrior 2010-07-30 14:06:13