发生WPF XAML Parse异常

时间:2014-02-10 08:03:17

标签: c# wpf mvvm

我正在开发一个Wpf应用程序,应用程序启动很好,启动画面比介绍页面好,但是当我点击下一步时它给了我以下例外:

A first chance exception of type 'System.Windows.Markup.XamlParseException' occurred in    PresentationFramework.dll.

以下是我的xaml代码:

<UserControl x:Class="AFICController.View.DiscoverConnectDevice"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:res="clr-namespace:AFICController.Resources"
             xmlns:view="clr-namespace:AFICController.View"
             >

    <UserControl.Resources>
        <BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/>
    </UserControl.Resources>

    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="40"/>
            <RowDefinition Height="60"/>
            <RowDefinition Height="100"/>
            <RowDefinition Height="100"/>
            <RowDefinition Height="100"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>

      <TextBlock
      Grid.Row="0"  Margin="5"
      FontFamily="Arial"  FontSize="12" Foreground="Black"  Opacity="0.8"
      TextWrapping="Wrap"
      Visibility="{Binding DeviceDiscoveryString1, Converter={StaticResource BooleanToVisibilityConverter}}"
      >
      Let's discover the active<Run FontStyle="Italic" Text="ARC"
         /><Run BaselineAlignment="Superscript" Text="®"/><Run Text="Access Point."/>
        </TextBlock>

        <TextBlock
      Grid.Row="0"  Margin="5"
      FontFamily="Arial"  FontSize="12" Foreground="Black"  Opacity="0.8"
      TextWrapping="Wrap"
      Visibility="{Binding DeviceDiscoveryString2, Converter={StaticResource BooleanToVisibilityConverter}}"
      >Discovering connected  active<Run FontStyle="Italic" Text="ARC"
         /><Run BaselineAlignment="Superscript" Text="®"/><Run Text="Access Point ...." />
        </TextBlock>
        <TextBlock
      Grid.Row="0"  Margin="5,5,5,0"
      FontFamily="Arial"  FontSize="12" Foreground="Black"  Opacity="0.8"
      TextWrapping="Wrap"
      Visibility="{Binding DeviceDiscoveryString3, Converter={StaticResource BooleanToVisibilityConverter}}"
      >
      No active<Run FontStyle="Italic" Text="ARC"
         /><Run BaselineAlignment="Superscript" Text="®"/><Run Text="Access Point found." />
      <LineBreak/>
       Verify connections and click on 'Let's Discover'.
        </TextBlock>

        <TextBlock
      Grid.Row="1" Margin="5,0,5,0"
      FontFamily="Arial"  FontSize="12" Foreground="Black"  Opacity="0.8"
      TextWrapping="Wrap"
      Visibility="{Binding DeviceDiscoveryString4, Converter={StaticResource BooleanToVisibilityConverter}}"
      >
      If problems persist, please contact active<Run FontStyle="Italic" Text="ARC"
         /><Run BaselineAlignment="Superscript" Text="®"/><Run 
                  Text=" support at 855.MYARC11 (855.692.7211) or support@activearc.att-mail.com."/>

        </TextBlock>

        <TextBlock
      Grid.Row="0"  Margin="5"
      FontFamily="Arial"  FontSize="12" Foreground="Black"  Opacity="0.8"
      TextWrapping="Wrap"
      Text="ARC1000MAP Discovered."
      Visibility="{Binding DeviceDiscoveryString5, Converter={StaticResource BooleanToVisibilityConverter}}"
      />

        <TextBlock
      Grid.Row="0"  Margin="5"
      FontFamily="Arial"  FontSize="12" Foreground="Black"  Opacity="0.8"
      TextWrapping="Wrap"
      Text="ARC2000MAP Discovered."
      Visibility="{Binding DeviceDiscoveryString6, Converter={StaticResource BooleanToVisibilityConverter}}"
      />

        <TextBlock
      Grid.Row="0"  Margin="5"
      FontFamily="Arial"  FontSize="12" Foreground="Black"  Opacity="0.8"
      TextWrapping="Wrap"
      Text="ARC3000MAP Discovered."
      Visibility="{Binding DeviceDiscoveryString7, Converter={StaticResource BooleanToVisibilityConverter}}"
      />



        <Button
      Grid.Row="2"    
      Width="150"
      Content="Let's Discover"
      HorizontalAlignment="Center"
      VerticalAlignment="Bottom"
      Command="{Binding ButtonCommand}" 
      Style="{StaticResource AppButton}"
      IsEnabled="{Binding IsDiscoverButtonEnable}" 

      />
    </Grid>
</UserControl>

我还附上截图:I think there is an issue with the constructor but dont know the exact problem.

任何人都可以解释我在哪里做错了吗?任何帮助都会非常感激我。

2 个答案:

答案 0 :(得分:0)

运行时XamlParseException在大多数情况下是从构造函数内部抛出的异常。请参阅View Detail内部例外部分。

在您的情况下,请检查Let's Discover按钮的资源,此处出现错误:

<Button Grid.Row="2"    
        Width="150"
        Content="Let's Discover"
        HorizontalAlignment="Center"
        VerticalAlignment="Bottom"
        Command="{Binding ButtonCommand}" 
        Style="{StaticResource AppButton}" <!-- Here -->
        IsEnabled="{Binding IsDiscoverButtonEnable}" />

答案 1 :(得分:0)

将访问修饰符设置为&#34; Public&#34;。双击Resources.resx文件,将访问修饰符从Internal更改为Public。