我一直在研究一个应用程序,我试图跟随this site在我的一个页面上添加一个颜色选择器,但是当我最终去测试我到目前为止所做的一些事情时,应用程序启动和退出时没有任何信息。输出:
'UI Task' (Managed): Loaded 'mscorlib.dll'
'UI Task' (Managed): Loaded 'System.Windows.RuntimeHost.dll'
'UI Task' (Managed): Loaded 'System.dll'
'UI Task' (Managed): Loaded 'System.Windows.dll'
'UI Task' (Managed): Loaded 'System.Net.dll'
'UI Task' (Managed): Loaded 'System.Core.dll'
'UI Task' (Managed): Loaded 'System.Xml.dll'
'UI Task' (Managed): Loaded '\Applications\Install\171F7914-3BB8-44C4-A0CE-A6B9B30A0BF5\Install\LSV_NOGPS.dll', Symbols loaded.
'UI Task' (Managed): Loaded 'Microsoft.Phone.dll'
'UI Task' (Managed): Loaded 'Microsoft.Phone.Interop.dll'
The thread '<No Name>' (0xf01016e) has exited with code 0 (0x0).
The program '[14879802] UI Task: Managed' has exited with code 0 (0x0).
我从其他项目得到的输出似乎有更多的库加载,从我可以告诉它可能没有正确加载'System.Device.dll'(这是正常运行的应用程序中加载的下一个)。 / p>
我在这里看到了一些非常类似的问题:
WP7 App Crashes Immediately upon deploy
Windows Phone 7 - App doesn't start, no errors, just bails on load
Visual Studio 2008 would not debug
但是所提出的答案都没有给我任何帮助。我根本没有更改名称空间,我检查了我的属性中的'startup'对象(它设置为我的项目的名称 .App)。
我已经尝试在构造函数的开头使用断点进行调试并进入项目但是每次退出时都没有看到我的任何代码。
我还尝试制作一个新项目,只将xaml和cs文件复制到其中,添加必要的引用。结果相同。
我刚尝试制作一个全新的解决方案,同名的新项目,再次复制xaml和相应的cs文件。同样的结果,即使我忘了添加必要的引用,它甚至还远远不足以意识到缺少引用。
我不知道该做什么,除了制作一个新项目并完成我的代码,添加片段,直到我再次遇到麻烦。
我不是编程的新手,但我对.net很新,所以如果我错过了一些明显的东西,那么请放轻松。
请帮忙!谢谢!
编辑:
我设法找到了令人讨厌的代码,但我不知道它为什么会给我这个问题。我从一个工作版本中取消了它,然后我再次遇到问题。它位于我的App:Application cs文件中。
public class ColorList {
public ColorList() {
this.Items = new List<ColorItem>()
{
new ColorItem() {Text="orange", Color = Colors.Orange},
new ColorItem() {Text="red", Color = Colors.Red},
new ColorItem() {Text="blue", Color = Colors.Blue},
new ColorItem() {Text="magenta", Color = Colors.Magenta},
new ColorItem() {Text="purple", Color = Colors.Purple},
new ColorItem() {Text="green", Color = Colors.Green},
new ColorItem() {Text="cyan", Color = Colors.Cyan},
new ColorItem() {Text="brown", Color = Colors.Brown},
new ColorItem() {Text="yellow", Color = Colors.Yellow},
};
}
public List<ColorItem> Items {
get;
set;
}
}
public static ColorList theColorsList = new ColorList();
我从上面的第一个链接获得了这个代码,并且我意识到它是一种非常奇怪的描述列表的方式所以我只是将其更改为以下内容:
public static List<ColorItem> ColorsList = new List<ColorItem>() {
new ColorItem() {Text="orange", Color = Colors.Orange},
new ColorItem() {Text="red", Color = Colors.Red},
new ColorItem() {Text="blue", Color = Colors.Blue},
new ColorItem() {Text="magenta", Color = Colors.Magenta},
new ColorItem() {Text="purple", Color = Colors.Purple},
new ColorItem() {Text="green", Color = Colors.Green},
new ColorItem() {Text="cyan", Color = Colors.Cyan},
new ColorItem() {Text="brown", Color = Colors.Brown},
new ColorItem() {Text="yellow", Color = Colors.Yellow}
};
但我仍然遇到同样的问题...
答案 0 :(得分:2)
对于那些登陆的人,请参阅WP7 App Crashes Immediately upon deploy
简而言之,更改名称空间可能会使启动对象无法设置。 (右键单击WP项目并仔细检查是否(正确)设置了启动对象。)
答案 1 :(得分:0)
在App.cs
中定义静态字段时,将在调用构造函数之前初始化字段。如果您在此初始化中遇到问题,则甚至无法访问App
的构造函数。另一方面,如果会抛出异常,VisualStudio应该向您显示异常。
也许您可以尝试在其他地方初始化ColorsList
,也许会使用Window
/ UserControl
,并尝试在初始化列表时找出问题所在。