Исключение синтаксического анализа XAML - xmlns: x = "http://schemas.microsoft.com/winfx/2006/xaml" - PullRequest
19 голосов
/ 28 января 2012

Прошлой ночью я работал над проектом WPF на моем компьютере, используя VS 2010 Ultimate.

Я только что открыл его на своем нетбуке с VS C # 2010 Express.

Когда я пытаюсь запустить его, мне выдается исключение синтаксического анализа XAML, которое говорит мне, что строка:

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

Это проблема. Я не вижу проблемы с этим, я никогда не изменял это, и похоже, что это то, что должно быть.

Ошибка:

'The invocation of the constructor on type 'WpfApplication1.MainWindow' that matches the specified binding constraints threw an exception.' Line number '3' and line position '9'.

Полный XAML:

<Window x:Class="WpfApplication1.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Camera" Height="550" Width="826" Background="#ddd" ResizeMode="NoResize" WindowStyle="None" MouseLeftButtonDown="Window_MouseLeftButtonDown" BorderBrush="#FF8D8D8D" BorderThickness="2" >
<Window.Resources>
    <Style TargetType="{x:Type Button}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Button}">
                   <ContentPresenter
              Margin="{TemplateBinding Control.Padding}"
              HorizontalAlignment="{TemplateBinding Control.HorizontalContentAlignment}"
              VerticalAlignment="{TemplateBinding Control.VerticalContentAlignment}"
              SnapsToDevicePixels="{TemplateBinding UIElement.SnapsToDevicePixels}"
              ContentTemplate="{TemplateBinding ContentControl.ContentTemplate}"
              RecognizesAccessKey="True"
              Content="{TemplateBinding ContentControl.Content}" />
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</Window.Resources>
<Grid Width="830" Height="510">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="132" />
        <ColumnDefinition Width="698*" />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="29" />
        <RowDefinition Height="319" />
        <RowDefinition Height="121" />
        <RowDefinition Height="16" />
        <RowDefinition Height="25*" />
    </Grid.RowDefinitions>
    <ComboBox Name="PortNames" Height="23" HorizontalAlignment="Left" VerticalAlignment="Top" Width="120" SelectionChanged="PortNames_SelectionChanged" Margin="12,6,0,0" />
    <Ellipse Grid.Row="2"  Height="120" HorizontalAlignment="Left" Name="ellipse1" StrokeThickness="6" VerticalAlignment="Top" Width="120" MouseLeftButtonDown="ellipse1_MouseLeftButtonDown" Margin="12,0,0,0">
        <Ellipse.Fill>
            <LinearGradientBrush EndPoint="1,1" StartPoint="0,0">
                <GradientStop Color="#89FF0000" Offset="0" />
                <GradientStop Color="Red" Offset="1" />
            </LinearGradientBrush>
        </Ellipse.Fill>
        <Ellipse.Stroke>
            <LinearGradientBrush EndPoint="1,1" StartPoint="0,0">
                <GradientStop Color="#FFB10000" Offset="0" />
                <GradientStop Color="#83B20707" Offset="0" />
                <GradientStop Color="#F7B00000" Offset="1" />
            </LinearGradientBrush>
        </Ellipse.Stroke>
    </Ellipse>
    <Button Content="Sync" Height="23" HorizontalAlignment="Left" Margin="57,6,0,0" Name="button1" VerticalAlignment="Top" Width="75" Click="button1_Click" Grid.Row="1" />
    <Rectangle Height="23" HorizontalAlignment="Left" Margin="12,6,0,0" Name="rectangle2" Stroke="Black" VerticalAlignment="Top" Fill="Red" Width="39" OpacityMask="#AA000000" Grid.Row="1" />
    <ProgressBar Grid.Row="4"  Height="19" HorizontalAlignment="Left" Name="progressBar1" VerticalAlignment="Top" Width="120" Margin="12,2,0,0" />
    <Rectangle Grid.RowSpan="5" Grid.Column="1" Height="500" Name="rectangle1" Stroke="#aaa" Width="660" Fill="#eee" Margin="12,5,26,5" />
    <Button Grid.Column="1" Height="18" HorizontalAlignment="Left" Margin="630,-20,0,0" Name="image1" VerticalAlignment="Top" Width="40" Click="image1_Click"><Image Stretch="Fill" Source="/PhotoProgram;component/Images/Close.png" /></Button>
    <Button Grid.Column="1" Height="18" HorizontalAlignment="Left" Margin="587,-20,0,0" Name="minimize" VerticalAlignment="Top" Width="40" Click="minimize_Click"><Image Stretch="Fill" Source="/PhotoProgram;component/Images/Minimize.png"  /></Button>
</Grid>

Ответы [ 4 ]

74 голосов
/ 28 января 2012

XAMLParseException является распространенным исключением, создаваемым в WPF. К сожалению, это не очень полезно.

Чтобы выяснить, что является настоящей ошибкой, вы можете включить отчеты об исключениях намного раньше в Visual Studio. Комбинация клавиш по умолчанию - Ctrl + Alt + E. Оттуда отметьте все поля.

Теперь исключение, которое выдается в вашем коде, будет выделено в отладчике.

3 голосов
/ 10 марта 2014

Попробуйте по ссылке

"Ur Need dll" -> properties-> copy to local-> true (изменить его на false)

сохранить и очистить решение, а затем восстановить его. Я думаю, что это будет работать (работал для меня).

1 голос
/ 28 января 2012

что xaml выглядит нормально.не должно быть никаких проблем с этим.Я думаю, что вы пытаетесь получить некоторые данные.Вы пытаетесь получить какое-то сообщение с вашим приложением?если это так, то размер сообщения по умолчанию составляет 65536 байт.увеличьте это число в вашем app.config.также откройте окна вывода во время работы вашей программы и проверьте, нет ли ошибок привязки.

0 голосов
/ 26 октября 2016

У меня была эта ошибка, и изменение отчетов об исключениях, похоже, не помогло

Я заметил, что пытался позвонить:

var processClass = new ManagementClass(@"\server.domain1.co.uk\root\cimv2:Win32_Process");

Где \server должно быть \\server

Изменение этого исправило проблему, но довольно неприятно иметь сообщение об ошибке, которое ничего не говорит о вашей ошибке.

Я действительно заметил эту ошибку в нескольких местах, когда строка имеетне был правильно сформирован в wpf, так что это может быть хорошим местом для начала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...