WPF:C#代码抛出XAMLParseException

时间:2017-03-24 05:29:46

标签: c# wpf xaml

我正在制作一个WPF应用程序,需要根据卷标(以及其他内容)查找驱动器名称。

问题是,当它运行以下代码来获取驱动器时,它会抛出一个XAMLParseException(请注意,此代码是静态类的一部分):

public static string driveAdministracion = "";
    public static string driveProyectos = "";
    public static void checkDrives()
    {
        DriveInfo[] drives = DriveInfo.GetDrives();
        for (int i=0; i<drives.Count();i++)
        {
            if (drives[i].VolumeLabel == "administracion") { driveAdministracion = drives[i].Name; }
            if (drives[i].VolumeLabel == "proyectos") { driveProyectos = drives[i].Name; }
        }

    }

异常消息是西班牙语,但翻译为:

  

System.Windows.Markup.XamlParseException:类型'MyNamespace.MainWindow'上与指定绑定约束匹配的构造函数的调用引发了异常。行号“6”和行位置“9”。

奇怪的是,如果我不运行驱动程序的代码,程序运行正常

继承人XAML:

<Window x:Class="ARAINCO_2._0.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:ARAINCO_2._0"
    mc:Ignorable="d"
    Title="MainWindow" Height="350" Width="525">
<Grid>

</Grid>

3 个答案:

答案 0 :(得分:0)

checkDrives方法可能会产生异常。将它包装在try catch块中以查看出现了什么问题或检查XamlParseException的内部异常。

答案 1 :(得分:0)

试试这个。

Ctrl + Alt + E 打开“例外”窗口,然后选中所有复选框。这样调试器就可以完全停在错误代码中,你可以找到实际原因。

答案 2 :(得分:0)

检查(或取消选中)&#34;只是我的代码&#34;设置中的选项 - &gt;调试,您将在输出窗口中看到更多错误数据。