2012-06-13 50 views
4

在开发过程中,我随机遇到未处理的异常,但主要是在关闭应用程序之后。设置'中断异常'的所有选项不会触发任何代码。任何经历过相同行为的人。我正在开发预览版本和Visual Studio RC版本。我做Winrt应用程序,在随机场合未处理的异常

Screenshot unhandled exception

+0

你有本机调试器附加? –

+0

不,我只是使用Visual Studio运行应用程序(在调试模式下)。附加第二个调试器不起作用。 – markwilde

回答

8

第一步要解决的问题是:

  • 启用在项目属性机调试(Debug标签, 调试器型)(日Thnx詹姆斯现在我知道你意思:-))
  • 设置符号服务器到正确的位置(工具,选项,调试,符号,所有模块)

并开始调试。这将需要几分钟的时间来开始加载所有符号....

我将它追溯到几个例外,当绑定到一个URL不解决的位图。该绑定是GridView与类的SmallImageSource位图属性的绑定。调试时,这会在本机代码中给出异常,但不会跟踪输出窗口或在应用程序中发出异常。最终我的应用程序崩溃了......修复这些资源后,我的应用程序不再崩溃。虽然这在小场景中不可重现。在它崩溃的应用程序代码的下面。 GridView控件嵌入在SemanticZoom控制

XAML(在semanticzoom控制使用)

  <GridView.ItemTemplate> 
       <DataTemplate> 
        <Grid Background="Gray" Width="300" Height="80"> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition Width="80"/> 
          <ColumnDefinition/> 
         </Grid.ColumnDefinitions> 
         <Image Source="{Binding Group.Key.SmallImageSource}" Stretch="Uniform" Margin="15" Grid.Column="0"/> 
         <TextBlock Text="{Binding Group.Key.Name}" Margin="0,10" TextAlignment="Center" Grid.Column="1" VerticalAlignment="Center"/> 
        </Grid> 
       </DataTemplate> 
      </GridView.ItemTemplate> 

C#(这里是一个URI不解析为本地资源)

public Uri SmallImage 
    { 
     get 
     { 
      return new Uri("ms-appx:///Resources/Images/SubCategories/" + Id + "_" + FunctionHelper.StripCharacter(Name) + ".png", UriKind.Absolute); 
     } 

    } 
    public BitmapImage SmallImageSource 
    { 
     get 
     { 
      return new BitmapImage(SmallImage); 
     } 
    } 
    } 
相关问题